前段时间我写了一段代码来更新数据库表中的多行。该代码是这样更新多行Linq vs SQL
var db = new MyDataContext();
db.Execute("UPDATE Details SET IsActive = 0 WHERE MasterId = 1");
然后有一天,当我得到了最新版,我看到有人改变了代码,以这样的
var details = from d in db.details where d.MasterId == 1 select d;
foreach (var detail in details)
detail.IsActive = false;
db.SubmitChanges();
所以我的问题是文件的:什么是更新多行的更好方法是什么?使用Linq或SQL?
我不会添加额外的答案 - 我的想法是,如果你想要一个答案,那么它将不得不是一个* set *操作的SQL,即你想用单个语句影响很多行的地方,但作为你说它实际上是一个折衷,你想做什么妥协。 – Murph 2009-11-18 20:05:22