Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Qual a necessidade de converter Endereco para ReadEnderecoDto?

Nessa rota existe um mapeamento da Classe Endereco para a classe ReadEnderecoDto Insira aqui a descrição dessa imagem para ajudar na acessibilidadeQual a necessidade deste mapeamento em especifico visto que tanto o DTO quando o Model são identicos? Insira aqui a descrição dessa imagem para ajudar na acessibilidadeInsira aqui a descrição dessa imagem para ajudar na acessibilidade

3 respostas

Boa noite, tudo em paz? Então, o exemplo foi ruim pq todas as propriedades são iguais mas temos dois objetivos distintos. A classe Endereco é responsável por enviar e receber as informações de um banco de dados. Ela vai conter propriedades secretas do negócio e que não seria interessante exibir pra qualquer pessoa. A classe EnderecoDto é responsável por exibir informações ao usuário. Essa classe deve conter apenas as informações necessárias para o usuário utilizar o sistema. Por exemplo, ao se cadastrar em um site de compras é comum informarmos dados pessoais (como CPF) e de cartão de crédito. Essas informações são enviadas ao banco através de uma classe de dados, como a Endereco, com todas as suas informações. Após cadastrar essas informações e acessar novamente o nosso perfil, vemos que nem todas as informações que utilizamos para realizar o cadastro são exibidas. Nosso endereço fica oculto (se o site tiver bom senso), nossa data de nascimento, nosso CPF, cartão de crédito e muitas outras informações são ocultas, visualizamos apenas uma parte daquela massa de dados - Essa seria a visualização de um DTO. O sistema busca todas as suas informações cadastrais e então realiza um filtro (mapping) daquilo que vc pode visualizar e então envia até o navegador para que vc o veja.

solução!

Nesse exemplo dos prints vc poderia, tranquilamente, retirar os IDs da classe DTO, pois é uma propriedade de negócio que identifica o endereço cadastrado mas que não tem relevância para o usuário.

Obrigada pela resposta, Leonardo! Muito didático! No caso minha questão foi especificamente voltada ao exemplo específico da foto, pois quando baixei a solução dei uma visitada nas classes pra ver o que tinham acrescentado do curso anterior e fiquei com essa pulga atrás da orelha, mas seguindo o curso vi que elas ainda iriam evoluir relacionando com chaves estrangeiras e outras regras. O que trouxe sentido para o mapping entre a classe DTO e a Model.