Есть сотни подобных вопросов по этой теме. Но я все еще смущен, и я бы хотел, чтобы эксперты посоветовали об этом.
Мы разрабатываем приложение с использованием ASP.NET MVC 4 и EF5, а наш подход - к DB.
У нас есть уровень данных в отдельном проекте, который является библиотекой классов и содержит все Определенные в нем объекты. И тогда бизнес-уровень определяется всеми репозиториями и моделями доменов (это правильный термин для использования). А затем появляется уровень представления.
В настоящее время мы не определили какие-либо модели представлений, мы используем одни и те же модели домена из BL в качестве моделей представлений. При таком подходе может быть достаточно одного отображения.
ENTITY <= > ДОМЕННАЯ МОДЕЛЬ
Но для меня это не похоже на хороший дизайн. Я предпочитаю иметь модели представления, определенные на моем уровне представления, и использовать модели домена для связи между уровнем представления и бизнес-уровнем. И в BL, конвертировать объекты домена в объекты данных и связываться с DAL. Используя этот подход, я должен использовать отображение дважды.
Показать модель <= > DOMAIN MODEL <= > ENTITY
Действительно ли нужна моя модель домена? Не могу ли я использовать свой объект для связи с уровнем Presentation. Есть ли какие-либо последствия, если я ссылаюсь на Entities в моем слое представления? Если есть какие-то последствия?