我在更改dotnetcore身份验证中的角色方面遇到了一些问题。
我有以下代码。
private async Task SetRoleToX(ClaimsPrincipal claimsPrincipal, string X)
{
var currentUser = await UserManager.GetUserAsync(claimsPrincipal);
var roles = await UserManager.GetRolesAsync(currentUser);
await UserManager.RemoveFromRolesAsync(currentUser, roles);
await UserManager.AddToRoleAsync(currentUser, X);
await SignInManager.RefreshSignInAsync(currentUser);
}
我无法更新ClaimsPrincipal。
我尝试过登录和登出。
如果我手动登录和注销,角色切换可以正常工作。
我一直在搜索网络,很多人说这应该可以工作:(