Рекомендуемая n-уровневая архитектура с EF4 - PullRequest
2 голосов
/ 20 ноября 2010

Этот вопрос задавался повсеместно миллионы раз, но я так и не нашел удовлетворительного ответа, который был бы конкретным для моей проблемы. Итак, вот и все:

В моей компании мы работаем с крупными веб-сайтами электронной коммерции и разбиваем наши приложения на уровни: презентация, BLL, DAL, структура приложения и модели (POCO) для хранения и передачи данных через уровни .

Для доступа к базе данных мы пишем код с блоками приложения данных на уровне DAL. Данные отображаются из DataReader в объекты Model, которые, в свою очередь, передаются в BLL и включаются в уровень Presentation.

Я хотел бы начать использовать EF4 в этих больших приложениях, но я бы хотел, чтобы он работал в автономной модели (я знаю, что это не было на самом деле предназначено для этого, но с небольшими дополнительными усилиями этого можно достичь).

Итак, каков наилучший способ вписать EF4 в эти уровни? Я имею в виду, я должен поместить файл .edmx в уровень DAL или в уровень модели? Должен ли я написать свои собственные классы Model и сопоставить класс Entity Model с одним из моих классов Model?

Заранее спасибо!

1 Ответ

0 голосов
/ 20 ноября 2010

По моему опыту, EFx в его нынешнем виде (версия 4) лучше всего подходит для новых приложений.

В установленном приложении мы использовали модель, сгенерированную для нас EF.Он был расположен в слое данных.Это потребовало от нас ссылки на слой данных в каждом слое приложения.Не идеально, но это сработало.

Это зависит от размера вашего приложения и его сложности, но мы использовали EF для простых операций CRUD.Для более сложных запросов мы решили сохранить их в базе данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...