查询更新多行

时间:2012-11-30 18:47:57

标签: .net linq entity-framework

我有令牌,userName,StatusId的表。在我为特定用户插入表中的任何行之前,我想检查是否存在任何具有活动状态的行,如果是,则将其更新为非活动状态。

我无法弄清楚如何在LINQ中执行此操作。目前我正在将我的价值观作为下面的查询。

var activeUsers = 
   (from _users in currentDataContext.Users 
        where _users.StatusId.Equals(1) 
        select _session);

2 个答案:

答案 0 :(得分:2)

users = currentDataContext.Users.Where(o => o.StatusId == 1);
foreach(var item in users)
  item.StatusId = 0;
currentDataContext.SaveChanges();

请注意,如果您的应用程序是多用户,则在查询数据库后可能会更改数据库。

答案 1 :(得分:0)

这会有用吗?

currentDataContext.Users.Where(x=> x.StatusId == true).First().StatusId = False;
currentDataContext.SaveChanges();