Olá.
Não entendi o motivo de criar essa classe FilmeProfile() e o método dela e não chamar em lugar nenhum. Ficou essa lacuna ao meu ver. Porque a criação e onde e como será a utilização dela, alguém pode me ajudar?
Olá.
Não entendi o motivo de criar essa classe FilmeProfile() e o método dela e não chamar em lugar nenhum. Ficou essa lacuna ao meu ver. Porque a criação e onde e como será a utilização dela, alguém pode me ajudar?
Olá Marconi! Tudo certo?
A classe FilmeProfile()
que você mencionou é parte do uso do AutoMapper, uma biblioteca que facilita a conversão entre objetos de diferentes tipos, como entre um DTO (Data Transfer Object) e uma entidade de domínio, no seu caso, entre CreateFilmeDto
e Filme
.
O FilmeProfile
é um "perfil" do AutoMapper que define como o mapeamento entre esses tipos será feito. Dentro dessa classe, você utiliza o método CreateMap<CreateFilmeDto, Filme>()
para especificar que o AutoMapper deve saber como converter um objeto do tipo CreateFilmeDto
para um objeto do tipo Filme
.
Embora você não veja essa classe sendo chamada diretamente no código, o AutoMapper utiliza esses perfis automaticamente quando você chama o método _mapper.Map<Filme>(filmeDto);
no controlador. Essa chamada diz ao AutoMapper para usar o mapeamento que você configurou no FilmeProfile
para converter o CreateFilmeDto
em um Filme
.
Esse processo é muito útil para manter o código limpo e evitar a necessidade de escrever manualmente o código de conversão entre objetos, especialmente quando você tem muitos campos ou muitos tipos de objetos para mapear.
Espero ter ajudado e bons estudos!