Czy powinienem zaimplementować DTO w wzór repozytorium z EF?
W moim projekcie korzystam z podejścia EF Code First. Mam warstwę repozytorium, warstwę usług i warstwę prezentacji (ASP.NET MVC). Używam dedykowanego modelu widoku dla każdego widoku.
Nie jestem pewien, czy moje usługi powinny zwracać elementy do kontrolera w celu odwzorowania ich na viewmodele, czy też powinienem implementować DTO i zwracać je z usług?
Pytanie brzmi, kiedy przepływ jest jak „EF -> Repozytorium -> Usługa -> UI”, co będzie transformacją danych. „Entity -> DTO -> Viewmodel” lub „Entity -> Viewmodel”?
Wygląda na to, że jeśli używam DTO, będą one powtarzać jednostki.
Staram się przestrzegać najlepszych praktyk.
Dziękuję Ci.