Quando sviluppiamo servizi che persistono dati con Entity Framework, spesso per aggiornare i dati ci facciamo passare una entity che poi attacchiamo al contesto. Una volta attaccata al contesto l'entity è ancora in stato di Unchanged, ma possiamo modificarne facilmente lo stato a Modified usando le API del DbContext.
Una volta impostato lo stato dell'entity su Modified, tutte le proprietà dell'entity vengono a loro volta marcate come Modified, ma non sempre questo è il risultato che si vuole ottenere in quanto a volte vogliamo che siano modificate tutte le proprietà tranne una.
Per impostare tute le proprietà a Modified tranne una con Entity Framework 4.x, dobbiamo impostare una a una le proprietà che vogliamo modificare su Modified in quanto con Entity Framework 4.x non è possibile marcare una proprietà come non modificata una volta che è stata marcata su Modified. Con Entity Framework 5 le cose cambiano in quanto possiamo impostare una singola proprietà come non modificata anche quando questa era impostata su Modified.
//Attacco l'entity al contesto ctx.People.Attach(person); //Imposto l'entity e tutte le proprieta a Modified ctx.Entry(person).State = EntityState.Modified; //Imposto una singola proprieta come non modificata ctx.Entry(person).Property(p => p.CreationDate).IsModified = false;
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Creare una libreria CSS universale: Cards
Popolare una classe a partire dal testo, con Semantic Kernel e ASP.NET Core Web API
Integrare SQL Server in un progetto .NET Aspire
Esporre i propri servizi applicativi con Semantic Kernel e ASP.NET Web API
Creare una libreria CSS universale: i bottoni
Collegare applicazioni server e client con .NET Aspire
Gestire progetti NPM in .NET Aspire
Il nuovo controllo Range di Blazor 9
Combinare Container Queries e Media Queries
Interagire con Azure DevOps tramite MCP Server
Scrivere selettori CSS più semplici ed efficienti con :is()
Loggare le query più lente con Entity Framework
I più letti di oggi
- Finalmente anche Silverlight 4.0 è RTW!
- Windows Phone 7 è in RTM
- Disponibile l'SDK per Windows Phone 7.8
- Nuove pubblicazioni dal 3 Settembre
- Rilasciata la versione 1.1 di Fujitsu NetCOBOL
- Microsoft Security Bulletin MS03-046
- Microsoft Security Bulletin MS03-047
- Da oggi ASPItalia.com gira su Windows Server 2003
- SP1 per il .NET Framework
- Speciale ATLAS: AJAX con ASP.NET 2.0


