我们可以在linq中编写update语句吗?
示例:
var query = Update customer set isEdit = 1 where id = 1
由于
答案 0 :(得分:4)
您可以做的是:
foreach(var c in customer.Where(x => x.Id == 1))
c.isEdit = 1;
答案 1 :(得分:2)
您可以使用类ForEach的List方法执行“看起来像Linq”查询来快捷更新:
var toUpdate = customer.Where(c => c.id == 1).ToList();
toUpdate.ForEach(c => c.isEdit = 1);
答案 2 :(得分:1)
是的,你可以,see my answer here。
Foo foo=new Foo { FooId=fooId }; // create obj and set keys
context.Foos.Attach(foo);
foo.Name="test";
context.SubmitChanges();
在您的Dbml中为所有属性设置UpdateCheck =“Never”。
这将生成单个更新语句,而无需先执行选择。