簡體   English   中英

列出非管理員的所有用戶。 我得到了所有用戶

[英]List all users that are not admin. I get all users

我在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的用戶和沒有角色的用戶。 我調試時可以看到我有3個用戶var role

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”。 這個對我有用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM