我使用的是ASP.NET MVC SimpleMemberShip提供程序,
登录后一段时间内没有任何问题。我检查用户是否是Boss,这是工作。
if (User.IsInRole("Boss")) {
//do something
}但是几分钟后,当我刷新页面时,User.IsInRole("Boss")总是返回false。我调试并检查了用户是否仍在登录,是的,用户仍然在那里,没有任何更改,但IsInRole一直返回false。
当我注销并再次登录时,它开始工作。
我认为问题与Sessions有关,但我找不到任何解决方案。
这是我在Web.config中所拥有的
<authentication mode="Forms">
<forms loginUrl="~/Account/Login" timeout="2880" />
</authentication>更新:
当我重新构建我的项目时,我意识到了这一点。
发布于 2013-10-19 03:18:47
你可能会丢了你的饼干。尝试添加:<forms loginUrl="~/Account/Login" cookieless="UseCookies" timeout="2880" />
这解决了我们MVC应用程序中的许多问题。
https://stackoverflow.com/questions/19428744
复制相似问题