Должен ли я реализовать DTO в репозитории с EF?
В моем проекте я использую подход EF Code First. У меня есть уровень хранилища, уровень обслуживания и уровень представления (ASP.NET MVC). Я использую выделенную модель для каждого вида.
Что меня смущает, так это то, что мои службы должны возвращать сущности контроллеру для сопоставления их с моделями представления, или я должен реализовывать DTO и возвращать их из служб?
Таким образом, вопрос заключается в том, когда поток будет выглядеть как «EF -> Repository -> Service -> UI», каким будет преобразование данных. "Entity -> DTO -> Viewmodel" или "Entity -> Viewmodel"?
Кажется, если я использую DTO, они будут как бы повторять сущности.
Я пытаюсь следовать лучшим практикам.
Спасибо.