EF 4.0 Performance Tips #7

Al final está saliendo una lista interesante de tips a tener en cuenta, y la verdad, cuando empecé a escribir esto no tenía intención que fuera tan grande, tendré que ponerlo blanco sobre negro y hacer un articulo para Krasis y Scribid :-).

Este último va a ser el más sencillo de todos, aunque seguramente para entenderlo hay que saber algunas cosas de infraestructura de EF, que ya comentamos en algunos post como aquí y aquí. Cada unos de los objetos de consulta de los que se dispone dentro de nuestros contextos de trabajo generados por Entity Framework poseen una propiedad llamada MergeOption la cual nos permite establecer que criterio deseamos establecer con respecto al seguimiento de las entidades consultadas. Algunas de las opciones de este enumerado están indicadas para el tratamiento de concurrencia como PreserveChanges y OverwriteChanges, pero básicamente las opciones a discutir son si se realiza  seguimiento de las entidades o no, AppendOnly o NoTracking. En escenarios dónde los contextos tienen ciclos de vida cortos, Short Lived Context, el uso del seguimiento de las entidades no aporta nada más que una sobrecarga que generalmente no necesitamos, la sobrecarga viene de los distintos ObjectStateEntry generados cuando tenemos seguimiento. Por eso, una recomendación facil de implementar y que nos puede aportar bastantes cosas es hacer que los distintos objetos de consulta ( ObjectSet u ObjectQuery, como les queráis llamar ) tengas establecida la opción NoTracking

Un comentario sobre “EF 4.0 Performance Tips #7”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *