Добавить UserClaim с ядром Identity asp.net - PullRequest
0 голосов
/ 15 ноября 2018

В моем классе я называю ApplicationRole и ApplicationUser как:

private readonly RoleManager<ApplicationRole> _roleManager;
private readonly UserManager<ApplicationUser> _userManager;
public Guid RoleId { get; set; }
public Guid UserId { get; set; }

public AssignRoleToUserModel(
    RoleManager<ApplicationRole> roleManager,
    UserManager<ApplicationUser> userManager)
{
    _roleManager = roleManager;
    _userManager = userManager;
}

И у меня есть метод назначения ролей пользователям, например:

public async Task<IActionResult> OnPost(RoleToUserModel model)
{
    var roleId = model.RoleId.ToString();
    var userId = model.UserId.ToString();
    var role = await _roleManager.FindByIdAsync(roleId);
    var roleName = role.Name;
    var user = await _userManager.FindByIdAsync(userId);
    await _userManager.AddToRoleAsync(user, roleName);
    return  RedirectToPage();
}

Так что в другихслова.Я добавляю новый регистр в таблицу UserRole с этим

await _userManager.AddToRoleAsync(user, roleName);

Мой вопрос: каков метод добавления нового регистра в таблицу UserClaim?Привет

1 Ответ

0 голосов
/ 15 ноября 2018

У вас есть почти все, вам нужна только претензия, которую вы собираетесь назначить пользователю.

await _userManager.AddClaimAsync(user,claim)
...