Eu tentei fazer por conta própria antes de assistir à solução e intuitivamente utilizei _context.Filmes.Remove(filme); que aparentemente funciona também. Como funciona o _context.Remove(filme);?
Eu tentei fazer por conta própria antes de assistir à solução e intuitivamente utilizei _context.Filmes.Remove(filme); que aparentemente funciona também. Como funciona o _context.Remove(filme);?
Olá Ruan! Bom dia!
Que bom que você está se dedicando ao curso ".NET 6: criando uma web API"!
Sobre a sua dúvida, tanto _context.Remove(filme); quanto _context.Filmes.Remove(filme); são formas de remover um registro do banco de dados, porém, a diferença está na forma como o Entity Framework Core (EF Core) trata essas operações.
Ao utilizar _context.Remove(filme);, o EF Core entende que você quer remover o objeto filme da base de dados, independente de qual tabela ele pertence. Já ao utilizar _context.Filmes.Remove(filme);, o EF Core entende que você quer remover o objeto filme da tabela Filmes.
Essa diferença pode parecer sutil, mas pode fazer a diferença em situações onde você precisa remover um registro que está em uma tabela relacionada, por exemplo.
Espero ter ajudado a esclarecer a sua dúvida. Se tiver mais alguma pergunta, é só falar!
Bons estudos!