2016-11-09 96 views
0

我想写以下OUTER的LINQ语句COUNT加入,但似乎无法工作了..SQL到LINQ与外连接和计数

我的LINQ技能不是他们应该还没有,所以任何指针将不胜感激。

有问题的SQL语句是:

SELECT b.Id, 

    b.Text, 

    b.Active, 

    COUNT(u.BusinessArea_Id) 

FROM dbo.[User] AS u RIGHT OUTER JOIN dbo.BusinessArea AS b ON b.Id = u.BusinessArea_Id 

GROUP BY b.Id, b.Text, Active 
ORDER BY b.Id 
+0

有你开了一个头。这些对象叫什么?请分享迄今为止所做的工作。 – Searching

回答

0

我认为你可以使用这样的LINQ:

var res = (from ba in businessAreas 
      let count = users.Count(u => u.BusinessArea_Id == ba.Id) 
      orderby ba.Id 
      select new {ba.Id, ba.Text, ba.Active, Count = count} 
     ).ToList();