我知道很多次都会问这个问题。我尝试了所有解决方案,但没有让它工作。我使用MVC4并使用表单身份验证。我没有使用成员身份,但希望在表单身份验证中存储角色。我使用下面的代码来实现我的目标。
FormsAuthentication.SetAuthCookie(result.ID.ToString(), false);
GenericPrincipal gp = new GenericPrincipal(HttpContext.User.Identity, new string[] { "admin" });
HttpContext.User = gp;
我使用User.Identity.Name
和User.Identity.IsAuthenticated
成功获取用户名和IsAuthenticated但是当我尝试使用代码var role = User.IsInRole("admin");
检查角色时,它返回false。
请帮忙。