0
我有一张表,我需要一次更新2行。如何使用更新语句在linq中一次更新两个以上的行
我的SQL查询将是这样的:
UPDATE tablename SET columnname=value WHERE tablename.id in (1,2)
我需要在LINQ相同。
在此先感谢。
我有一张表,我需要一次更新2行。如何使用更新语句在linq中一次更新两个以上的行
我的SQL查询将是这样的:
UPDATE tablename SET columnname=value WHERE tablename.id in (1,2)
我需要在LINQ相同。
在此先感谢。
LINQ to SQL中没有这样的东西。它将一直更新一行。
当然,你可以做一个
foreach (var key in keys)
{
var r = db.Table.Single(i=>i.ID == key);
r.xyz = value;
}
db.submitchanges()
但从本质上讲,这将更新一个更新语句的每一行。在交易中,尽管如此它会达到与您的更新声明相同的效果,但根据记录数量会有显着的性能损失
它可能对您有所帮助。 http://stackoverflow.com/questions/10314552/how-to-update-the-multiple-rows-at-a-time-using-linq-to-sql 谢谢 – 2015-02-11 12:38:25
已经询问过http:// stackoverflow.com/a/10314666/17447有一个非常详细的答案。 – naveen 2015-02-11 12:38:46
LINQ是*查询*语言,而不是更新语言。 – 2015-02-14 10:18:16