从角色中删除用户并检查

时间:2019-01-01 10:19:48

标签: asp.net-mvc asp.net-web-api asp.net-identity asp.net-roles

我有两个角色(freeUser,subscriptionedUser),当我尝试使用

从角色(订阅的用户)中删除用户时
 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表并且该用户已删除,该用户仍然仍是subscribedUser角色

1 个答案:

答案 0 :(得分:1)

删除您的Cookie历史记录,在其他浏览器中签入或重新启动应用程序。有时,会话将验证用户,即使数据库中不再存在该用户。