Прежде всего, я хочу уточнить, что я новичок в разработке Driven Driven Design, и я задаю этот вопрос, потому что я прочитал что-то, называемое Anemic Domain Model.
В большинстве случаев я вижу следующее при работе с шаблоном репозитория.
- У нас есть один общий репозиторий
- У нас есть модель, которая содержит только набор общедоступных свойств, но не содержит какого-либо метода (поэтому она становится моделью анемического домена в соответствии с определением DDD), потому что здесь класс репозитория обрабатывает другой процесс для этого объекта или модели.
Пожалуйста, предоставьте свой ценный ответ для моего запроса.
Позвольте мне пояснить несколько вещей.
Общий репозиторий означает общий интерфейс, который реализуется репозиторием Entity.
Моя путаница касается следующей вещи
Например: Предположим, я хочу сохранить
public class User
{
public int Id { get; set;}
public string Name { get; set};
}
public class UserRepository : IRepository<User>
{
// All Operation Like Save / Get / UserEntity (Domain Object)
}
Итак, вот мой класс User ничего не делает, а просто имеет свойства и другой дескриптор операции UserRespository
. Так что мой пользователь - это модель анемичного домена. (Так как он ничего не делает)
Здесь, в прикрепленном изображении, я рассматриваю ProductRepository
, поэтому мой вопрос: Является ли класс My Product Anemic model?
Пожалуйста, рассмотрите пример Образца изображения для того, что я пытаюсь сказать.