Я хочу знать, не является ли плохим проект использования репозиториев при преобразовании DTO в их аналог объекта домена.
Я создаю n-уровневое веб-приложение, которое имеет слой репозитория и сервисслой и ef4 для ORM.Сервисный уровень предоставляет DTO-версии объектов домена.Когда я получаю DTO от потребителя службы, служба будет использовать AutoMapper для преобразования DTO в объект домена.Теперь некоторые свойства-члены объекта домена нужно будет загрузить из базы данных, например, у меня есть класс ниже -
DTO Версия:
public class LogonEventDto
{
public DateTime Time
{
get;
set;
}
public Guid UserId
{
get;
set;
}
}
Версия домена:
public class LogonEvent
{
public DateTime Time
{
get;
set;
}
public User User
{
get;
set;
}
}
Теперь, когда дело доходит до преобразования DTO в версию DO, мне нужно будет вызвать метод GetById () в UserRepository и установитьСвойство LogonEvent.User с результатом.
Просто чтобы сообщить вам, я в настоящее время вручную выполняю всю логику преобразования в слое обслуживания.
Итак, как я спрашивал выше, этоплохое дизайнерское решение и если да, то почему?