Ottimizzare le performance di LINQ To SQL disabilitando l'ObjectTracking

di Stefano Mostarda, in LINQ,

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

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi