【发布时间】:2015-05-02 03:42:49
【问题描述】:
我正在尝试获取角色类型为“Project_Manager”且未分配给我传入的 projectId 的 ApplicationUser 列表。我尝试过几种不同的方式,但结果不是我想要的会期待的。对我的逻辑有什么建议吗?
var pmNotAssigned =
(from p in db.Project
from u in p.Users
where p.ProjectId != projectId &&
u.Roles.Any(r => r.RoleId == db.Roles.FirstOrDefault(rr => rr.Name == "Project_Manager").Id)
select u)
.ToList();
【问题讨论】:
-
没有什么能立刻让我眼前一亮。结果不符合你的预期?
-
它返回具有“Project_Manager”角色但“!=” where 子句不起作用的用户列表。我有一个分配给项目的 pm 用户列表,我想要一个未分配的用户列表,以便我可以将它们添加到多选中。现在,我有 2 个 PM 列表。这两个查询之间的唯一区别是“!=”与“==”。是个 '!'在错误的地方?
标签: linq entity-framework-6 asp.net-identity