【发布时间】:2019-12-14 11:27:59
【问题描述】:
我有一个使用_userManager.Users.ToList() 检索的用户列表(来自 AspNetUsers 表),但他们没有初始化声明(存储在 AspNetClaims 表中)。有没有办法用他们的声明正确初始化用户?
这是我目前所拥有的(使用下面的 ApplicationUser 实现):
var emails=_userManager.Users.Select(x=>x.Email).ToList();
var users= ?? //somehow get ClaimsPrincipal from emails??
ApplicationUser 类(实现 IdentityUser):
public class ApplicationUser : IdentityUser
{
public string LGID { get; } = ""; //claim set in claims table
public ApplicationUser() { }
public ApplicationUser(ClaimsIdentity identity)
{
IEnumerable<Claim> claims = identity.Claims;
foreach (Claim c in claims)
{
switch (c.Type)
{
case "LGID":
LGID = c.Value;
break;
......
【问题讨论】: