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
Creare un webhook in Azure DevOps
Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
Creare gruppi di client per Event Grid MQTT
Utilizzare QuickGrid di Blazor con Entity Framework
Aggiornare a .NET 9 su Azure App Service
Utilizzare un service principal per accedere a Azure Container Registry
Gestire i dati con Azure Cosmos DB Data Explorer
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Creazione di componenti personalizzati in React.js con Tailwind CSS
Utilizzare Azure AI Studio per testare i modelli AI
Creare alias per tipi generici e tuple in C#
Ottimizzare le pull con Artifact Cache di Azure Container Registry
I più letti di oggi
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
- Introduzione alle Container Queries in CSS
- Rimuovere le righe vuote da un file di testo con FSO
- Ottimizzare le pull con Artifact Cache di Azure Container Registry