Sobes.tech
Middle

¿Cuál es la diferencia entre los métodos Include y ThenInclude en Entity Framework?

sobes.tech AI

Respuesta de la IA

Include carga las entidades relacionadas desde una propiedad de navegación. ThenInclude carga las entidades relacionadas desde la propiedad de navegación de la entidad, ya incluida con Include u otro ThenInclude.

Ejemplo:

// Cargar pedidos (Orders) y los clientes (Customers) relacionados
context.Orders.Include(o => o.Customer);

// Cargar pedidos (Orders), los clientes (Customers) relacionados
// y las direcciones (Addresses) de estos clientes
context.Orders.Include(o => o.Customer).ThenInclude(c => c.Addresses);

En resumen, Include se usa para el primer nivel de anidamiento, y ThenInclude para niveles posteriores, permitiendo cargar datos relacionados profundamente anidados en una sola consulta.