Automatisches Eager Loading in Entity Framework Core 5.0
17.05.2021, 00:00 Uhr
Mitnahmeeffekt
Mit Auto-Includes kann der Entwickler zentral Includes-Anweisungen für LINQ-Befehle definieren.
Microsoft hat in Entity Framework Core 5.0 eine neue Möglichkeit für das Eager Loading eingeführt: Man kann zentral in der Kontextklasse automatische Includes definieren, die immer wirken, auch ohne ein explizites Include() in der Abfrage. Dieses Feature hat Microsoft in der Liste der neuen Features von Entity Framework Core 5.0 vergessen [1] und es gibt auch bisher (Stand Januar 2021) keine Dokumentation dazu – außer einem kurzen Satz in der API-Dokumentation, siehe [2] und [3].
Der Entwickler kann in OnModelCreating(ModelBuilder mb) mithilfe der Methoden Navigation() und AutoInclude
(true) ein automatisches Mitladen festlegen. In Listing 1 wird festgelegt, dass für die Entität Flight immer der Pilot und Copilot sowie die Liste der Buchungen (BookingSet) mitgeladen werden sollen. Ebenso soll für eine Buchung die Passagierinformation mitgeladen werden.
(true) ein automatisches Mitladen festlegen. In Listing 1 wird festgelegt, dass für die Entität Flight immer der Pilot und Copilot sowie die Liste der Buchungen (BookingSet) mitgeladen werden sollen. Ebenso soll für eine Buchung die Passagierinformation mitgeladen werden.
Jetzt 1 Monat kostenlos testen!
Sie wollen zukünftig auch von den Vorteilen eines plus-Abos profitieren? Werden Sie jetzt dotnetpro-plus-Kunde.
- + Digitales Kundenkonto,
- + Zugriff auf das digitale Heft,
- + Zugang zum digitalen Heftarchiv,
- + Auf Wunsch: Weekly Newsletter,
- + Sämtliche Codebeispiele im digitalen Heftarchiv verfügbar