2013-05-07 110 views
0

这对你们来说可能很容易,但我坚持转换成linq。 这里是我的sql查询Linq to Entity - 加入更新

update Sevt set 
UserFlag4 = 0 
from Sevt, Wo W 
where Sevt.Seqnum = W.SeqNum and w.WONUM = '1502411' 

这里是二表连接,但不知道如何转换为LINQ。任何帮助非常感谢,在此先感谢

+0

Linq仅用于查询。它本身与数据库无关。所以这个问题没有任何意义...进一步用nHibernate/Linq2SQL/EF你不能做更新使用where子句...不直接... – Aron 2013-05-07 06:25:49

+0

@Aron,我的坏,我试图转换我的SQL查询以Linq为实体。 – Usher 2013-05-07 06:26:49

+0

但是,如果问题是关于实体框架... [实体框架扩展](http://efe.codeplex.com/) – Aron 2013-05-07 06:26:49

回答

2

只需从SQL中选择这两个表。然后更新标志并保存更改。

var query = from s in context.Sevt 
      from w in context.Wo 
      where s.Seqnum == w.SeqNum && w.WONUM == "1502411" 
      select s; 
foreach (var set in query) 
{ 
    set.UserFlag4 = 0; 
} 
context.SaveChanges(); 
+0

感谢很多@ david.s – Usher 2013-05-07 06:31:25

+0

大型更新,这是非常unperformant。我认为这是你的问题...... EFE更适合大型更新。 – Aron 2013-05-07 07:18:05