G'day everyone。使用linq生成直接更新,无需选择
我还在学习LINQ,所以原谅我,如果这是天真的。当您直接处理SQL时,可以使用条件生成更新命令,而无需运行select语句。
当我使用LINQ工作,我似乎遵循的模式:
- 选择实体
- 修改实体
- 提交更改
我想要做的就是直接更新使用linq和延期执行。实际执行是否可能直接在SQL中发生,而没有任何数据传输到客户端?
DataContext dc = new DataContext
var q = from product in dc.Products
where product.Type = 1
set product.Count = 0
dc.SubmitChanges
因此,在本质LINQ有它需要的所有不使用选择生成的更新命令的信息。它会运行SQL:
Update Products Set Count = 0 Where Type = 1
在LINQ中是否存在像“set”这样的关键字?
目前接受的答案是错误的 - 您能选择正确的答案吗? – laktak 2015-10-07 07:49:44
下面的答案不允许我所描述的基于集合的更新,但它们很有趣。 – Spence 2015-10-08 00:03:06