Как правильно передавать данные из репозитария (EF)?
Имеем репозитарий UserRepository, который читает данные из БД, используя EntityFramework и сервисный класс UserService, который обращается к репозитарию. А наше UI уже обращается к этому сервису.
Допустим доменная модель
class User { string Name {get; set; }}
Каким образом отдавать данные? Неужели в виде доменных моделей?
На ум приходят варианты:
1. Сделать еще один класс UserModel (UserDto?), в котором буду только нужные поля, а в методе репозитария (или в сервисе) преобразовывать доменную модель (простым копированием значений полей). Как вариант, чтобы не копировать данные, UserModel может быть потомком User (какие сложности вызовет?)
2. Отдавать доменную модель, но предварительно отсоединять ее от контекста.