| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Entity Framework и 3-уровневая архитектура |
| Автор: MFSham 2.7.2014, 12:39 | ||
| Добрый день всем. Подскажите как правильно реализовать трехуровневую архитектуру. Что есть: DataLayer - Database First EF model (Repository + Unit of Work patterns) BusinessLayer - модельки для приложения PresentationLayer - ASP.NET web site Все как бы хорошо и замечательно, но пока не могу понять как разрулить такую ситауцию - хочу получить данные из нескольких таблиц (Inner/left join). Допустим у нас есть 2 таблицы - визиты и клиенты. Надо достать имя клиента и инфу о визите.
В BusinessLayer создаю модельку под это дело и должен ее налить. А теперь основной "затык". Что мне возвращать в методе на уровне DataLayer? Ведь слой данных ничего не знает про модельку в BusinessLayer. IQuerable? |
| Автор: Ilya81 2.7.2014, 14:33 |
| Я обычно для таких случаев создаю разделяемый модуль с интерфейсами. В нём ж интерфейс для factory, который передаётся в BusinessLayer в качестве параметра при его создании (собственно, factory здесь нужен будет уже для записи в БД для создания экземпляров интерфейсов). |
| Автор: jonie 2.7.2014, 15:47 |
| https://layersample.codeplex.com/releases/view/117278 вот тут можно посмотреть всякие примерчики для расширения кругозора |