我正在尝试查询aspnet成员资格表,并获取特定应用程序中所有用户的电子邮件列表,这些应用程序可以包含在角色列表中。我正在传递角色的指导清单。如果我删除带有&& r.RoleId的行,则其余查询有效,但是我试图弄清楚如何查询Guid列表中的角色ID。

    from m in Aspnet_Memberships
    join u in Aspnet_Users on m.UserId equals u.UserId
    join ur in Aspnet_UsersInRoles on u.UserId equals ur.UserId
    join r in Aspnet_Roles on ur.RoleId equals r.RoleId
    join a in Applications on r.WebApplicationID equals a.ApplicationId
    where a.ApplicationId == new Guid("55555555-4444-3333-2222-111111111111")
    && r.RoleId in rolesList //rolesList is a List<Guid>
    select new  {
        m.Email,
        u.UserName,
        a.ApplicationName,
        r.RoleName
    }

最佳答案

您需要Contains

rolesList.Contains(r.RoleId)

关于c# - linq查询 list ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22206621/

10-09 07:22