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
Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
Integrare un servizio esterno con .NET Aspire
Migliorare i tempi di risposta di GPT tramite lo streaming endpoint in ASP.NET Core
Eseguire query in contemporanea con EF
Autenticazione di git tramite Microsoft Entra ID in Azure DevOps
Change tracking e composition in Entity Framework
Loggare le query più lente con Entity Framework
Testare l'invio dei messaggi con Event Hubs Data Explorer
Gestione dei nomi con le regole @layer in CSS
Persistere la ChatHistory di Semantic Kernel in ASP.NET Core Web API per GPT
Utilizzare la funzione EF.Parameter per forzare la parametrizzazione di una costante con Entity Framework
Managed deployment strategy in Azure DevOps