c# - Em qual camada transformar Dominio em DTO - Stack Overflow em Português
Olá, em uma aplicação Asp.Net MVC a arquitetura possui classes de entidade de domínio, DTOs e ViewModels. A transformação das ViewModels eu faço no controller, até ai tudo bem, mas em qual camada eu devo fazer a transformação de classes de domínio para DTO, é correto um repository retornar DTO ou receber DTO para inserção no banco de dados? O correto não seria trabalhar com classes de domínio nos services, camada de regras de negócio e repositories e DTO somente nas camadas de apresentação?
Acho que tudo depende do tamanho do projeto. (Não precisa de um canhão para matar um mosquito). Você pode usar um AutoMapper para fazer a transformação de forma mais desacoplada, pode considerar que somente o controller veja as VMs e com isso tb as DTOs, pode considerar que o controller não veja as DTOs e com isso outra cama veja VMs e com isso as DTOs também. – Ricardo 23/07/16 às 15:02
Isso ai é bem relativo, mas, tambem depende do tamanho do projeto porque sua arquitetura pode acabar ficando confusa. Isso é dificil de prever em projetos ágeis, tirando o fato de que em alguns projetos ageis o PM/PO tem um misto de visão tecnica e de negócio e consegue passar um rumo para a engenharia. Isso torna a pergunta muito ampla, você pode tentar ser mais sucinto? (talvez exemplos ajudem). – Intruso 23/07/16 às 15:17
Pesquise outras perguntas com a tag c# asp.net-mvc arquitetura-de-software ou faça sua própria pergunta.