我有ASP.NET MVC 4应用程序.我使用简单会员提供商,允许勾选记住我在登录表单下的复选框.如果打勾,则会创建持久的cookie .ASPXAUTH是从登录日期起计100天.除了应用程序的主菜单之外,一切都正常.
@if (User.IsInRole("Administrator")) { @Html.Partial("_MainMenuPartial") }
以防止它们被普通用户渲染.这种方法在登录系统后工作正常.当我一段时间后回来,持久性的cookie被用来认证我,我确实登录了,但是
@User.IsInRole("Administrator")
返回“False”,所以我看不到管理菜单项.与此同时
@User.Identity.Name
返回正确的登录名和
@User.Identity.IsAuthenticated