Я только что прочитал главу об агрегатах и обнаружил, что я что-то неправильно понимаю. У нас есть три объекта: Участник, Предмет, Ставка. Вот фрагмент кода из книги:Агрегаты доменных моделей
public class Member
{
public string Id {get; set;}
...
}
public class Item
{
public string Id {get; set;}
public IList<Bid> Bids {get; set;}
...
}
public class Bid
{
public Member Member {get; set;}
...
}
Autor писал, что пункт и его предложения является один агрегат как Bid не имеет смысла без пункта. Таким образом, Item и Member являются совокупными корнями. Однако я думаю, что ставка не имеет смысла и без члена. И кажется, что это логично. Итак, что такое ставка в этой ситуации? Является ли это частью агрегата Item?
Итак, как бы вы получили ставки участника? Я полагаю, что класс-член должен будет ссылаться на Элементы, на которых эта ставка участника. Затем в корне агрегата Item может быть функция для извлечения ставок участника для этого элемента. –
Я написал, что Item и Member являются AR. Хм, я не согласен с тем, что агрегаты могут очень сильно отличаться от BC в одной модели домена. – Danil
@ Meta-Knight Моделирование домена не имеет ничего общего с хранилищем базы данных, и этот пример очень упрощен, поэтому он напоминает, как объекты ORM могут быть смоделированы, но это все. Я всегда рассматриваю домен и постоянство разных, поэтому я не забочусь о хранении, когда имею дело с доменом. – MikeSW