我有两个角色(freeUser,subscribedUser),当我尝试使用从角色中删除用户(订阅用户)时
await UserManager.RemoveFromRoleAsync(subscription.UserId, RoleName.SubscribedUser);
它成功地将他从 AspNetUserRoles 表中删除,但是当我再次检查以查看用户是否使用
var roles = ((ClaimsIdentity)User.Identity).Claims
.Where(c => c.Type == ClaimTypes.Role)
.Select(c => c.Value);
var enumerable = roles as IList<string> ?? roles.ToList();
或使用User.IsInRole(RoleName.SubscribedUser)
这是返回的! 并且用户仍然处于角色订阅用户中,即使我检查了 AspNetUserRoles 表并且他正在删除
删除您的 cookie 历史记录,签入其他浏览器或重新启动应用程序。有时,会话将验证用户甚至不再存在于数据库中。