clausula with(nolock) en LINQ
-
martes, 21 de febrero de 2012 22:59
Hola,
Estoy dando mis primeros pasos en LINQ to SQL y estoy encontrando ciertos problemas para adaptar la clausula WITH(NOLOCK) a la sintaxis de LINQ.
Por diferentes foros he encontrado cierta controversia al respecto. No acabo de dar con la receta adecuada.
Os pongo un ejemplo basico y si os parece me contestais en base al mismo:
Intento seleccionar valores de las tablas v_gestione, d_product_price y d_vettura, pero en ningun caso quiero bloquearlas durante la seleccion.
var requestInfo = (from tour in db.v_gestione
join price in db.d_product_price on tour.price_id equals price.price_id
join carWay in db.d_vettura on price.vettore_service_id equals carWay.vettore_service_id
select new
{
tour.price_id,
tour.totPax,
tour.booking_dateTour,
carWay.vettura_price,
carWay.vettura_id
});
foreach (var request in requestInfo)
{
tourInfo oTourInfo = new tourInfo( tour.price_id, tour.totPax, tour.booking_dateTour));
LinkedTours.Add(oTourInfo);
}Pasa la solucion por utilizar System.Transactions.IsolationLevel.ReadUncommitted ?
Gracias por adelantado.
Todas las respuestas
-
miércoles, 22 de febrero de 2012 11:34
Hola,
No existe en linq nada especifico que te permita utilizar (NOLOCK) como bien has dicho la solucion es que utilices el nivel de aislamiento de la transacción es decir tu mismo te has respondido:)
Pasa la solucion por utilizar System.Transactions.IsolationLevel.ReadUncommitted ?
Sí
Saludos,
phurtado
-
lunes, 27 de febrero de 2012 23:15
Si, gracias Pedro.
Despues tuve un problema con la variable anonima requestInfo porque la declaracion quedaba aislada en el scope.
Cree un clase para requestInfo y problema resuelto.
Saludos.

