注销 - 如何清除缓存,asp.NET

时间:2011-08-25 12:08:58

标签: c# asp.net visual-studio-2010

我正在使用C#开发asp.NET 4.0 Web应用程序。我目前使用会话进行身份验证,在注销时我正在清除会话。但是当用户按下时会出现问题,他仍然可以看到缓存的页面。我想禁用这些页面的缓存,或确保检查它。

这样做的最佳方式是什么?如果我将服务器设置为不存储缓存信息,这会影响所有应用程序还是只是我的应用程序?

2 个答案:

答案 0 :(得分:7)

page_load

中添加此内容
Response.Cache.SetCacheability(HttpCacheability.NoCache);

这是唯一真实的答案,尽管重要的是要知道浏览器只有一个请求来停止缓存 - 它不一定要遵循。

这需要包含在您不希望用户“返回按钮”的每个页面上。

答案 1 :(得分:0)

您可以在主页面的Page_Init中添加以下行

protected void Page_Init(object sender, EventArgs e)
    {
        Response.Cache.SetExpires(DateTime.UtcNow.AddMinutes(-1));
        Response.Cache.SetCacheability(HttpCacheability.NoCache);
        Response.Cache.SetNoStore();
    }