Шаблон репозитория и Entity Framework - PullRequest
5 голосов
/ 29 октября 2009

Я просмотрел множество примеров в Интернете, используя Шаблон репозитория с EF. Но никто из них на самом деле не говорил о работе с родственными организациями.

Как, скажем, у пользователя может быть несколько адресов.

IUserRepository
User CreateUser();
void UpdateUser();

Теперь, если я должен добавить адрес пользователю, он должен быть в репозитории? ИЛИ ЖЕ на экземпляре пользователя

Я чувствую, что шаблон хранилища должен использоваться для CRUD и Get Operations на объекте. Но когда дело доходит до работы со связанными сущностями, они действительно должны быть определены для сущности [по большей части]

Как и в этом сценарии, адрес бесполезен без пользователя, разве он не должен быть на объекте?

есть мысли?

1 Ответ

4 голосов
/ 29 октября 2009

Это на самом деле не вопрос EF; это больше вопрос шаблона репозитория. Поднимите книгу DDD и ознакомьтесь с концепцией совокупных корней . Если адрес «бесполезен без пользователя», то, как вы говорите, вероятно, в репозитории не должно быть методов CRUD Но концепция совокупного корня делает это гораздо более формальным.

...