Junior — Middle
Wat is het verschil tussen de methoden include en theninclude bij het werken met relaties in ORM?
sobes.tech AI
Antwoord van AI
De Include-methode in ORM (bijvoorbeeld Entity Framework) wordt gebruikt voor het eager laden van gerelateerde entiteiten van de eerste niveau. Het stelt je in staat om gerelateerde gegevens van een navigatie-eigenschap samen met de hoofdentiteit te laden.
ThenInclude wordt gebruikt om gerelateerde entiteiten van het tweede en hogere niveau te laden, dat wil zeggen voor geneste navigatie-eigenschappen na Include.
Voorbeeld:
var orders = context.Orders
.Include(o => o.Customer) // laden van de gerelateerde Customer
.Include(o => o.OrderItems) // laden van de collectie OrderItems
.ThenInclude(oi => oi.Product) // voor elke OrderItem, laad Product
.ToList();
Hier laadt Include OrderItems, en ThenInclude laadt de gerelateerde Product-objecten.
Op deze manier start Include de keten van het laden van gerelateerde gegevens, en ThenInclude breidt deze uit voor geneste relaties.