В моем приложении ASP.NET MVC я использую шаблоны единиц работы и репозитория для доступа к данным.
Используя единицу рабочего класса и определенный внутри него репозиторий, я извлекаю связанный набор сущностей в моем контроллере. Обладая знаниями для начинающих, я могу придумать два способа извлечь бизнес-модель и преобразовать ее для просмотра модели.
- Репозиторий возвращает бизнес-модель контроллеру, эта модель сопоставлена с моделью просмотра, или
- Сам репозиторий преобразует бизнес-модель для просмотра модели и затем возвращается в контроллер.
В настоящее время я использую первый подход, но мой код контроллера стал уродливым и длинным для моделей с множеством свойств.
С другой стороны, я думаю, поскольку мой репозиторий называется UserRepository (например), он должен возвращать бизнес-модель напрямую, а не какую-то модель, которая полезна только для одного представления.
Какой из них вы считаете лучшей практикой для больших проектов? Есть ли альтернативный способ?