User.IsInRole结果不正确

时间:2019-05-06 10:31:07

标签: c# asp.net-mvc razor

我认为这行代码 @User.IsInRole("employee") 登录的用户具有员工角色,但是此方法返回false。 但它与管理员的角色配合得很好 @User.IsInRole("admin") 有什么问题,我该如何解决?

2 个答案:

答案 0 :(得分:0)

我在代码中添加了this,它可以正常工作! this.User.IsInRole("employee")

答案 1 :(得分:-1)

确保具有角色“ employee”的用户来自 AspNetUserRoles

您可以尝试通过简单的查询来确认用户是否确实在角色中

  Select roles.UserId,rolename.Name from [XXX].[dbo].[AspNetUserRoles] as roles   
  inner join [XXX].[dbo].[AspNetRoles] as rolename on  roles.UserId = 'XXXXXX' 

如果查询运行并且您没有看到列出原因的“雇员”角色。