无法编写Linq查询

时间:2013-05-15 09:27:42

标签: linq

我有一个SQL查询。我想将其转换为LINQ查询。 UserLinksUserRoles是代表dbase表的c#类。

select distinct UserLinks.LinkID from UserLinks 
   where RoleID in (select RoleID from UserRoles where UserID=1) and UserLinks.Enable='true'

1 个答案:

答案 0 :(得分:4)

var roleIds = UserRoles.Where(u => u.UserID == 1)
                            .Select(r=>r.RoleID)
                            .ToList();
var result = UserLinks.Where(u => roleIds.Contains(u.RoleID) && u.Enable)
                            .Select(l => l.LinkID)
                            .Distinct()
                            .ToList();