La classe DbContext ci permette di accedere alle principali funzionalità di Entity Framework. Tuttavia, questa classe non copre il 100% delle funzionalità. Ad esempio, non possiamo eseguire query sfruttando Entity SQL così come non possiamo chiamare il metodo SaveChanges specificando se applicare le modifiche agli oggetti in memoria dopo che gli stessi oggetti sono stati persistiti sul database.
Per eseguire queste operazioni dobbiamo obbligatoriamente ricorrere alla classe ObjectContext. Un'istanza della classe DbContext ingloba internamente un'istanza della classe ObjectContext ed espone questa istanza attraverso la proprietà ObjectContext dell'interfaccia IObjectContextAdapter che la classe DbContext implementa.
Questo significa che semplicemente castando l'oggetto di tipo DbContext all'interfaccia IObjectContextAdapter possiamo poi recuperare l'istanza dell'ObjectContext attraverso l'omonima proprietà così come mostrato nel seguente codice.
using (var ctx = new MyContext()){
ObjectContext context = ((IObjectContextAdapter)ctx).ObjectContext;
...
}Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare @property per animare nativamente un oggetto HTML tramite CSS
Utilizzare le librerie native di .NET per decomprimere un file zip
Welcome to Future Dev Day 2026
Stop Building Chatbots. Build a team
Configurare OpenTelemetry per Application Insights su ASP.NET Core
Integrare email esterne con Azure Functions e Managed Connectors
Ciclo di vita risorse con .NET Aspire
Realizzare un accordion con gli elementi HTML details e summary
Sfruttare la funzione REGEXP_SUBSTR di Sql Server per estrarre testo da un campo tramite regular expression
Rendere affidabile lo scale out su Azure App Service
Gestione opzioni colonna nella Blazor QuickGrid
Blazor e InputHidden in .NET 10


