列出非管理员的所有用户。我得到了所有用户

时间:2016-01-05 10:13:05

标签: c# asp.net asp.net-identity

我在asp.net中使用Identity。我想显示不属于Admin。角色的所有用户。

我可以得到像这样的所有用户

var userView = await UserManager.Users.OrderBy(u => u.UserName).ToListAsync();
return View(userView); 

尝试让所有不属于admin角色的用户(没有角色的用户)。

var role = db.Roles.SingleOrDefault(m => m.Name == "Admin");
var userView = UserManager.Users.Where(m => m.Roles.All(r => r.RoleId != role.Id));
return View(userView);

仍然获得所有用户。具有角色Admin的用户和没有角色的用户。我在调试时可以看到var role中有3个用户。

1 个答案:

答案 0 :(得分:-1)

var role = RoleManager.Roles.SingleOrDefault(m => m.Name == "Admin");
var userView = UserManager.Users.Where(m => m.Roles.All(r => r.RoleId != role.Id));
return View(userView);

-尝试将“ db”替换为“ RoleManager”。这个对我有用。