In Entity Framework 4.0 possiamo marcare una entity attaccata al contesto come da cancellare grazie al metodo DeleteObject della classe ObjectSet<T>.
Questa possibilità era ovviamente disponibile anche in Entity Framework 1.0, ma questa API era esposta solamente dalla classe ObjectContext, la quale aveva bisogno oltre che della entity anche del nome dell'entity set su cui aggiungerla. Inoltre, potendo questo metodo accettare più classi il parametro della entity è di tipo Object. Il risultato è che si potevano commettere diversi errori.
Poichè questo nuovo metodo è della classe ObjectSet<T>, non c'è bisogno di passare il nome dell'entity set, in quanto è già presente nella classe ObjectSet<T>. Inoltre, poichè il parametro T rappresenta il tipo esposto dalll'entity set, anche il parametro in input al metodo deve essere di quel tipo. In questo modo eliminiamo ogni possibilità di errore a run time.
var customer = new Customer
{
CustomerId = 1,
};
ctx.Customers.Attach(customer);
ctx.Customers.DeleteObject(customer);
ctx.SaveChanges();Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Usare la libreria PredicateBuilder per eseguire query tramite Entity Framework che usano or su più campi
Eseguire query in contemporanea con EF
Mappare una complex property di una entity su un campo JSON
Mischiare codice server side e client side in una query LINQ con Entity Framework
Utilizzare ExecuteUpdate per aggiornare colonne JSON in Entity Framework
Creare espressioni riutilizzabili nelle query LINQ per Entity Framework
Usare la parola chiave field per semplificare la scrittura di proprietà in C#
I più letti di oggi
- Global Azure 2026 - ASPItalia.com - Milano
- Future Dev Day - Milano
- Microsoft Visual Studio Code: un nuovo editor gratuito per Windows, MacOSX e Linux per sviluppatori ASP.NET e Node.js
- .NET Conference Italia 2023 - Milano e Online
- .NET Conference Italia 2022 - Milano e Online
- ASP.NET 4.5 e Visual Studio 2012 Live - Online
- .NET Conference Italia 2022 - Track in presenza - Milano
- .NET Conference Italia 2025 - Milano
- devConf 2022 - Online
- Global Azure Milan 2020 - Online




