【发布时间】:2008-12-08 00:32:32
【问题描述】:
前段时间我写了一段代码来更新数据库表中的多行。代码是这样的
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?
【问题讨论】: