2012-03-31 8 views
6

cómo utilizar las sugerencias de tabla en LINQ a SQL cuando la llamada presentar cambios métodocómo utilizar las sugerencias de tabla en LINQ a SQL

dataContext.table2.something = dataContext.table1.something; 
dataContext.SubmitChanges();  

quiero usarlo como el código SQL:

declare @var int; 
begin transaction 
select @var = something from table1 with (HoldLock); 
update table2 set something = @var; 
update table1 set something = @var + 1; 
commit transaction; 
+0

Casi duplicado: http://stackoverflow.com/questions/4104323/how-to-use-sql-server-table-hints-while-using-linq –

+0

¿Qué consejos necesita agregar exactamente? Dependiendo de esto puede haber diferentes soluciones. – JotaBe

Respuesta

1

Siempre he oído que no se puede hacer. El objetivo de Linq (o al menos uno de ellos) es sacar o no pensar en SQL para que no tenga que preocuparse por cosas como esta. Sugiero que agregue su código con la sugerencia de la tabla a un procedimiento SQL y use Linq para llamarlo.

+0

lamentablemente por alguna razón no puedo usar el procedimiento almacenado – Star

+0

¿qué hay de las vistas, las funciones de la tabla? o no puedes crear ningún objeto en el DB – Diego

+0

solo puedo crear vistas, pero ¿cómo puede ayudar esto? – Star

2

Esto no es posible.

En realidad, es posible haciendo hacking desagradable serio utilizando la reflexión. Puede compilar una consulta y luego manipular la cadena SQL generada en algún objeto interno. Esta es la forma menos conveniente de hacer esto.

Te recomiendo que te quedes con SQL sin procesar para este.