主页 > 知识库 > 网络编程 > ASP/.NET >

设置ASP.NET页面不被缓存

来源:中国IT实验室 作者:佚名 发表于:2013-06-23 21:42  点击:
/// summary /// 设置页面不被缓存 /// /summary private void SetPageNoCache() { Response.Buffer = true; Response.ExpiresAbsolute = System.DateTime.Now.AddSeconds(-1); Response.Expires = 0; Response.CacheControl = no-cache; Response.AppendHea
 /// <summary>  /// 设置页面不被缓存
  /// </summary>
  private void SetPageNoCache()
  {
  Response.Buffer = true;
  Response.ExpiresAbsolute = System.DateTime.Now.AddSeconds(-1);
  Response.Expires = 0;
  Response.CacheControl = "no-cache";
  Response.AppendHeader("Pragma", "No-Cache");
  }
  1。 取消缓存
  (2)客户端取消
  <html>
  <head>
  <meta http-equiv="Expires" CONTENT="0">
  <meta http-equiv="Cache-Control" CONTENT="no-cache">
  <meta http-equiv="Pragma" CONTENT="no-cache">
  </head>
  (3)服务器具端取消:
  服务器端:
  Response.Buffer = true;
  Response.ExpiresAbsolute = DateTime.Now.AddDays(-1);
  Response.Cache.SetExpires(DateTime.Now.AddDays(-1));
  Response.Expires = 0;
  Response.CacheControl = "no-cache";
  Response.Cache.SetNoStore();
  Global里面:
  protected   void   Application_BeginRequest(Object   sender,   EventArgs   e)
  {
  HttpContext.Current.Response.Cache.SetNoStore();
  }
  <%@ OutPutCache Location="None"%>
  页面基类:
  public   class   PageBase   :   Page
  {
  public   PageBase()   {}
  protected   override   OnLoad(   EventArgs   e   )   {
  Response.Cache.SetNoStore();
  base.OnLoad();
  }
  }
  最简单的办法 :-)
  学CSDN的这个论坛,在URL后面随机的加一些没用的参数,比如:
  http://xxx/xxx/xxx.jpg?p=xxx
  IE是用过URL来控制缓存的,这样就解决了

    有帮助
    (0)
    0%
    没帮助
    (0)
    0%