Sobes.tech
Junior — Middle

Explique o conceito de Eager Loading no Entity Framework e em que casos é utilizado.

sobes.tech IA

Resposta da IA

Eager Loading no Entity Framework é uma forma de carregar dados relacionados juntamente com a entidade principal numa única consulta à base de dados. Isto ajuda a evitar o problema de "N+1 consultas", onde uma consulta separada é feita para cada registo relacionado.

É utilizado quando se pretende obter objetos relacionados de imediato, para não fazer consultas adicionais mais tarde. Por exemplo, se tiver uma entidade Order e os seus OrderItems relacionados, e desejar obter todos os pedidos juntamente com as suas posições, aplica-se o Eager Loading.

Exemplo de uso com o método Include:

var orders = context.Orders
    .Include(o => o.OrderItems)
    .ToList();

Assim, carrega-se os pedidos e de imediato as posições relacionadas, o que melhora o desempenho ao aceder posteriormente aos dados relacionados.