我认为这行代码
@User.IsInRole("employee")
登录的用户具有员工角色,但是此方法返回false。
但它与管理员的角色配合得很好
@User.IsInRole("admin")
有什么问题,我该如何解决?
答案 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'
如果查询运行并且您没有看到列出原因的“雇员”角色。