获取某个索赔的所有用户
本文关键字:用户 获取 | 更新日期: 2023-09-27 18:26:34
对于ASP.NET Identity 2.0:
有人知道如何获得"指定索赔的所有用户"吗?
假设我有一个索赔,类型="ArticleId",值="1"。
如何获取所有拥有此声明的用户?我真的想不通。。所以,谢谢你的帮助!!
检查这个。
var userContext = new ApplicationDbContext();
var users = userContext.Users.ToList(); Or
var users = UserManager.Users.ToList();
var userfilter = users.Where(u => u.Claims.Any(t => t.ClaimType == "ArticleId" && t.ClaimValue == "1"));
最好使用此处所述的方法UserManager<TUser>.GetUsersForClaimAsync(Claim)
:https://learn.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.identity.usermanager-1.getusersforclaimasync?view=aspnetcore-7.0
使用单独的上下文来操作用户、角色和声明是不好的做法,因为这可能会干扰EF跟踪。