Как избежать анемичного доменного слоя и все еще иметь богатую проверку и бизнес-правила

Пожалуйста, посмотрите на следующее обсуждение, я думаю, что вы можете найти там свой ответ:

Невозможно обновить внешний ключ в Entity Framework 6

13
задан Keith Patton 7 October 2008 в 10:41
поделиться

1 ответ

  • , Если объект является объектом значения, это должно быть неизменно и проверено во время конструкции.

  • , Если объект является корневым агрегатом, и что его собственное состояние достаточно, чтобы сказать Вам, если это допустимо или нет, Вы могли бы добавить метод проверки на нем, который располагается каскадом посредством агрегирования.

  • Наконец, и я думаю, что это - Ваше основное беспокойство, если необходимо получить доступ к нескольким связанным объектам (которые не находятся в том же агрегате) гарантировать, что один из них допустим, окончательно необходимо выслать эту логику в определенном сервисе проверки.

я действительно думаю, что введение сервисов и репозиториев в объекты не является лучшим выбором. Создание специализированных сервисов кажется более соответствующим, и я не вижу, почему оно будет приводить Вас иметь анемичные объекты области.

Короче говоря, если можно проверить Вас объектное состояние, не полагаясь на сервисы или репозитории, позволяют объекту, заботится о нем, на совокупном корневом уровне. Когда необходимо запросить сервисы или репозитории, или когда Вы нуждаетесь в других объектах, тогда сильно рассматриваете перемещение этой логики вне объекта.

12
ответ дан 2 December 2019 в 00:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: