Quando dobbiamo gestire l'ereditarietà in Entity Framework Core, l'entity set esposto dal contesto ha come parametro generico il tipo base della catena di ereditarietà. Se abbiamo una classe base Person e le classi derivate Manager e Employee, l'entity set è di tipo DbSet
Fino ad Entity Framework Core 2.0, quando dovevamo scrivere una query LINQ, tramite il metodo Include potevamo precaricare solo le navigation property del tipo di base Person. A partire da Entity Framework Core 2.1 possiamo precaricare anche proprietà dei tipi derivati eseguendo un cast all'interno del metodo come mostrato nel prossimo esempio.
var query1 = context.People.Include(p => ((Manager)p).Car); var query2 = context.People.Include(p => (p as Manager).Car); var query3 = context.People.Include("Car");
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Ottimizzare le pull con Artifact Cache di Azure Container Registry
Anonimizzare i dati sensibili nei log di Azure Front Door
Filtrare i dati di una QuickGrid in Blazor con una drop down list
Generare un hash con SHA-3 in .NET
Utilizzare Locust con Azure Load Testing
Utilizzare l nesting nativo dei CSS
Change tracking e composition in Entity Framework
Il nuovo controllo Range di Blazor 9
Utilizzare i variable font nel CSS
Gestione file Javascript in Blazor con .NET 9
Utilizzare la funzione EF.Parameter per forzare la parametrizzazione di una costante con Entity Framework
Effettuare il log delle chiamate a function di GPT in ASP.NET Web API