Каков наилучший способ проектирования хранилищ для сложных объектов, при условии использования ORM, такого как NHibernate или Entity Framework?
Я создаю приложение с использованием Entity Framework 4. Приложение использует сложные объекты:объект Foo
содержит коллекцию объектов Bar
в свойстве Foo.Bars
и т. д.В прошлом я бы создал FooRepository
, а затем BarRepository
и вставил бы ссылку на BarRepository
в конструктор FooRepository
.
Когда запрос передается в FooRepository
, он будет вызывать BarRepository
по мере необходимости для создания свойства Foo.Bars
для каждого объекта Foo
.А когда объект Foo
передается в FooRepository
для сохранения, хранилище вызывает BarRepository
для сохранения объектов в свойстве Foo.Bars
.
Мой вопрос довольно прост:общепринятый способ настройки хранилищ?Есть ли лучший подход?Спасибо за вашу помощь.