Una delle caratteristiche più utili di LINQ To SQL è la capacità di tener traccia degli oggetti caricati e delle modifiche effettuate a essi; questa caratteristica prende il nome di ObjectTracking. Seppur molto comoda, spesso questa funzionalità è completamente inutile perchè gli oggetti ritornati dalla query non devono essere tracciati. Questo può capitare, ad esempio, quando si esegue la query in un servizio e l'entità caricata va restituita all'esterno o quando si deve fare una query solo per controllare i dati senza dover fare aggiornamenti ne caricamenti in lazy.
L'ObjectTracking è una parte molto pesante del motore di LINQ To SQL ed è attiva per default, è quindi è necessario disabilitarla dove non necessaria.
using (NWDataContext ctx = new NWDataContext())
{
ctx.ObjectTrackingEnabled = false;
...
}Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare il metodo CountBy di LINQ per semplificare raggruppamenti e i conteggi
Usare la libreria PredicateBuilder per eseguire query tramite Entity Framework che usano or su più campi
Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
Creare espressioni riutilizzabili nelle query LINQ per Entity Framework
Utilizzare il metodo IntersectBy per eseguire l'intersection di due liste
Mischiare codice server side e client side in una query LINQ con Entity Framework
Utilizzare il metodo ExceptBy per eseguire operazione di sottrazione tra liste
I più letti di oggi
- Effettuare il multi-checkout in linea nelle pipeline di Azure DevOps
- Gli oggetti CallOut di Expression Blend 4.0
- Sfruttare una CDN con i bundle di ASP.NET
- Utilizzare un DataContext specifico per la modalità design time di Blend e Visual Studio nei controlli Silverlight
- Alleggerire le applicazioni WPF sfruttando gli oggetti Freezable
- Le DirectInk API nella Universal Windows Platform


