Fino alla versione 2.0, Entity Framework Core non offre il supporto per le transazioni utilizzando TransactionScope. Questa mancanza non è propria di Entity Framework, bensì di ADO.NET che fino alla versione 2.0 di .NET Core non ha il supporto a TransactionScope. Con la versione 2.1 di .NET Core, il supporto a TransactionScope è stato aggiunto e quindi possiamo beneficiarne anche in Entity Framework Core come il prossimo script dimostra.
using (var ts = new TransactionScope())
{
using (var ctx1 = new MyContext)
{
...
ctx1.SaveChanges();
}
using (var ctx2 = new MyContext)
{
...
ctx2.SaveChanges();
}
ts.Complete();
}In questo esempio, sebbene i due contesti salvino i loro dati usado il metodo SaveChanges, niente viene persistito sul database finchè l'oggetto TransactionScope non esegue il commit della transazione.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Selettore CSS :has() e i suoi casi d'uso avanzati
Utilizzare WebJobs su Linux con Azure App Service
Abilitare .NET 10 su Azure App Service e Azure Functions
Gestire gli errori nelle Promise JavaScript con try()
Integrare OpenAI tramite Aspire
Ridurre il reflow cambiando il CSS
Configuratione e utilizzo .NET Aspire CLI
Integrare un servizio esterno con .NET Aspire
Supportare la crittografia di ASP.NET Core con Azure Container App
Importare repository da Bitbucket a GitHub Enterprise Cloud
Esporre un server MCP con Azure API Management
Gestire pubblicazione Kubernetes tramite .NET Aspire


