ASP .NET MVC 5中的清除会话?

时间:2017-01-12 11:24:43

标签: c# asp.net asp.net-mvc asp.net-mvc-5

我有一个问题。我在ASP .NET MVC 5中工作。我要防止的是,在退出后,我点击后退导航按钮,我不想回到上一页。有没有人可以帮助我?我使用Session Clear和Abandon方法以及FormsAuthentication的SignOut方法。但这不是我唯一的问题。

3 个答案:

答案 0 :(得分:2)

应该使用OutputCache操作方法

[OutputCache(NoStore = true, Duration = 1)]

你添加的Global.asax.cs

protected void Application_BeginRequest()
{                
    Response.Cache.SetCacheability(HttpCacheability.NoCache);
    Response.Cache.SetExpires(DateTime.UtcNow.AddHours(-1));
    Response.Cache.SetNoStore();                                 
}

会话检查操作方法

if (Session["xxx"] == null)
{
     return View("aaaa");
}

答案 1 :(得分:1)

这是因为浏览器缓存了数据,您必须通过在页面响应中设置一些标题来清除浏览器缓存。

你可以使用这个问题How to refresh page on back button click?

的答案来做到这一点

答案 2 :(得分:0)

[见图片]
1)签出用户
2)在Controller

之前放置[Authorize]属性

这会将用户重定向到登录页面