EF4 actualmente no tiene una forma integrada de hacerlo IF ef4 genera todas sus consultas.
Existen varias formas de evitar esto, como el uso de procedimientos almacenados o un modelo de consulta en línea más extenso; sin embargo, esto puede consumir mucho tiempo, por decir lo menos.
Creo (y no hablo de Microsoft en esto) que el almacenamiento en caché es la solución prevista de Microsoft para aligerar la carga en el servidor en sitios EF4. Habiendo leído sin compromiso (o nolock) incorporado en un marco crearía problemas impredecibles para el comportamiento esperado de EF4 cuando se ejecutan 2 contextos al mismo tiempo. Eso no significa que su situación necesite ese nivel de concurrencia.
Parece que le pidieron nolock en TODAS las selecciones. Si bien estoy de acuerdo con un póster anterior en que esto puede ser peligroso si tiene CUALQUIER transacción que deba ser una transacción, no estoy de acuerdo en que automáticamente haga del DBA un muppet. Es posible que solo esté ejecutando un CMS que es totalmente genial para lecturas sucias. Puede cambiar el NIVEL DE AISLAMIENTO en toda su base de datos que puede tener el mismo efecto.
El DBA puede haber recomendado nolock para operaciones que SÓLO fueron seleccionadas (lo cual está bien, especialmente si hay un ORM mal interpretado y haciendo algunos volcados de datos dudosos). Lo más gracioso de ese comentario de muppet es que Stack Overflow en sí mismo ejecuta el servidor SQL en un modo de LEER NO COMPROMETIDO. ¿Adivina que necesita encontrar otro lugar para obtener respuestas a sus problemas, entonces?
Hable con su DBA acerca de la posibilidad de configurar esto en una base de datos o considere una estrategia de almacenamiento en caché si solo la necesita en algunos lugares. Después de todo, la web no tiene estado, por lo que la simultaneidad a menudo puede ser una ilusión, a menos que usted lo aborde directamente.
Info about isolation levels
Acepto los consejos en el hilo que enlaza: Use 'SNAPSHOT/READ_COMMITTED', no' NOLOCK'. Considero que 'NOLOCK' es en su mayoría obsoleto, aunque nunca fue una buena idea, ya que hace que sus transacciones no sean ACID. Ver también http: // stackoverflow.com/questions/1452996/is-the-nolock-sql-server-hint-bad-practice Además, este artículo resume las ventajas y desventajas http://www.sqlmag.com/Articles/ArticleID/93075/93075.html? Ad = 1 –