在标题中User.IsInRole()
总是在控制器中返回false,但在视图中效果很好。另外我无法设置
<roleManager enabled="true" />
,因为我在项目构建时遇到了错误
使用注册为allowDefinition =&#39; MachineToApplication&#39;的部分是错误的。超出应用水平。此错误可能是由于虚拟目录未在IIS中配置为应用程序。
任何sugestions?或者有没有其他方法来检查当前用户是否在角色?
(我试过Roles.IsUserInRole(User.Identity.Name, "Recruit")
,但我得到了相同的结果)。我正在使用ASP.NET MVC 5和.NET Identity 6.2
答案 0 :(得分:2)
Roles.IsUserInRole
是MembershipProvider的一部分。如果您使用的是Asp.Net Identity,则需要使用RoleManager
(MSDN)代替。
原因是因为您可以使用User.IsInRole
- 身份框架支持此调用,它会查找cookie,检查cookie中可用的角色。