嗨,有没有人能帮我把这个查询转换成linq??
SELECT DISTINCT Users.IDUsr, Users.Name
FROM [UserGroups.UnitType] INNER JOIN
[UserGroups.Units] ON
[UserGroups.UnitsTypes].IDUGOUT = [UserGroups.Units].IDUGOUT
RIGHT OUTER JOIN
Users INNER JOIN [Users.Groups] ON Users.IDUsr = [Users.Groups].IDUsr
INNER JOIN UserGroups ON [Users.Groups].IDUsrGrp = UserGroups.IDUsrGrp
ON [UserGroups.OrganizationUnits].IDUsrGrp = UserGroups.IDUsrGrp
WHERE (Users.Removed = 0) AND ([UserGroups.UnitsTypes].Type <> 100) OR
([UserGroups.UnitsTypes].Type IS NULL)发布于 2010-02-26 05:15:25
我想你的一些代码被剪掉了。它依赖于一个根本不存在的表。
这是我所能做的最好的事情:
var query =
(
from u in Users
from g in u.UsersGroups
from un in g.Units.DefaultIfEmpty()
let t = un.UnitsType
where u.Removed == 0 && (t.Type <> 100 || t.Type == null)
select new { ID = u.IDUsr, Name = u.Name }
).Distinct()发布于 2010-02-26 02:07:11
我不是很了解linq,但是使用诸如linqer和linqpad之类的工具应该能够帮助获得正确的语法。
https://stackoverflow.com/questions/2336243
复制相似问题