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
Gestire trasferimenti cloud con Azure Storage Mover
Utilizzare DeepSeek R1 con Azure AI
Gestione CSS in Blazor con .NET 9
Gestire pubblicazione Kubernetes tramite .NET Aspire
Creare agenti facilmente con Azure AI Agent Service
Disabilitare le run concorrenti di una pipeline di Azure DevOps
Documentare i servizi REST con Swagger e OpenAPI con .NET 9
Fissare una versione dell'agent nelle pipeline di Azure DevOps
La gestione della riconnessione al server di Blazor in .NET 9
Utilizzare @property per animare nativamente un oggetto HTML tramite CSS
Gestire gli errori nelle Promise JavaScript con try()
Testare il failover sulle region in Azure Storage
I più letti di oggi
- Effetto turnstile su tutte le pagine con il Windows Phone Toolkit
- Effettuare il multi-checkout in linea nelle pipeline di Azure DevOps
- Esaminare documenti XML con namespace utilizzando LINQ to XML
- Alleggerire le applicazioni WPF sfruttando gli oggetti Freezable
- Sfruttare una CDN con i bundle di ASP.NET
- Le DirectInk API nella Universal Windows Platform
- Gli oggetti CallOut di Expression Blend 4.0


