Главный вопрос, что вам нужно для. Я подозреваю, что это связано с каким-то интерфейсом или функцией отчетности. Если это так, то мой совет должен состоять в том, чтобы не использовать концепции модели домена для этих запросов.
Другими словами, отдельные концепции модели домена, которые отлично подходят для обеспечения согласованности и достижения контроля над сложной бизнес-логикой, из запросов, связанных с отчетностью (представление результатов в пользовательском интерфейсе - это форма отчета в конце концов). Несоблюдение этого разделения в какой-то момент всегда приводит к корректировке модели домена, чтобы соответствовать требованиям какого-либо пользовательского интерфейса или отчета, и этого не должно произойти.
В вашем случае я бы просто подготовил запрос, который игнорирует агрегат и выбирает все данные, которые мне нужны. Конечно, когда какое-либо деловое действие должно быть выполнено по результатам, оно должно использовать модель домена. После того, как все агрегаты несут ответственность за поддержание согласованности, и единственное, что будет иметь возможность взаимодействовать с согласованностью, - это обновление данных - чтение данных не приведет к изменениям, поэтому использование агрегатов для чтения является, по моему мнению, бессмысленным.
Подводя итог - функциональность, связанная с отчетностью в большинстве сценариев, не должна вызывать корректировку бизнес-концепций Domain Model.
Is ExtendedOrder унаследован от заказа? –
Да унаследовано – Ricibald
Ricibald, можете ли вы разместить два определения классов – smartcaveman