1
resposta

[Dúvida] Formas de implementar um método de atualização de dados

Estou vendo a parte de atualização de dados com PUT e fiz da seguinte maneira (que funcionou), e ficou mais simples do que a forma implementada na aula: código sem mapper, somente passando o objeto inteiro atualizado para o método update do _context

Na aula está dessa forma, que achei mais complexa: Código usando mapper

Quero saber se tem algo que não reparei que faça com que seja melhor implementar usando a dependência do mapper. Afinal, se no put atualizamos todos os dados eu só passei ele inteiro para a função Update.

1 resposta

Está bacana sua solução. O da aula tem uma classe DTO, eu não lembro se nesse curso fala sobre, mas costuma usar porque nem todas propriedades do Model ou da Entidade queremos mostrar pro usuário.

Exemplo:

public class Filme
{
    public int Id { get; set; }
    public string Name { get; set; }
    // imagina mais umas 15 propriedades
}

public class FilmeDto
{
    // é só o que o usuário precisaria saber de um filme (exemplo)
    public string Name { get; set; }
    public string Sinopse { get; set; }
    public DateTime DiaLancamento { get; set; }
}

Alguns padrões de arquitetura utilizam esse DTO. Dê uma olhada no link que vai explicar melhor. https://learn.microsoft.com/pt-br/aspnet/web-api/overview/data/using-web-api-with-entity-framework/part-5

Nessa sua solução como você faria se aplicasse DTO?

Espero que tenha te esclarecido algo. Parabéns pelo código seu, não está errado, só tem esse detalhe dos DTOs.