MyMenu
通过后台程序禁止ASPX页面使用缓存的方法


Admin | 2009-3-15 19:38:09 | Nums: 1364 Times|  上一篇  下一篇 本文来自:asp.net 打印本页 

您尚未登陆,本站复制功能仅对会员开放    〖注 册〗 〖登 陆〗

  当我们在NET2.0网站中使用无刷新技术的时候,最怕缓存了,时常让客户端不能显示最新的数据。

  一般情况下,WEB页面都会在Internet临时文件夹中有一个临时文件。

  假如您有一个页面New.aspx,在客户端第一次访问后,它会在Internet临时文件夹里有一个New.aspx,文件生成.之后,如果修改了New.aspx的数据后再次访问该页面,发现IE并没有对这个New.aspx的数据进行更新,反而打开的是第一次访问的页面!

  为什么会这样,是因为IE自动(默认)调用了Internet临时文件夹里有一个New.aspx文件,而不是重新下载新的New.aspx,怎样能让IE自动重新下载新的New.aspx呢,就像点了刷新按钮重新加载此页面一样?

  解决的第一种方法:

  客户端的设置方法:Internet选项→常规→Internet临时文件中"设置"→每次访问此页时检查。

  这种设置时最好同时删除临时文件,这种方法是让客户自己设置自己的浏览器,如果客户忘记了设置,那么,新的页面总是下载不到本地.这时,客户会怎样认为呢?("肯定是程序的错!")

  此外,别人访问您的页面,客户端的浏览器由他们来操作,一般,这种方法不宜解决此类问题。

  解决的第二种方法:

  让程序自己来让页面自动下载!

  这种方法实际上是让页面不保存到Internet临时文件夹中,每次访问页面都会让浏览器下载页面。

  只要在New.aspx代码的Page_Load事件中加上

  Context.Response.Cache.SetCacheability(HttpCacheability.NoCache);即可.

  不防你试试.在不加这句时,你打开页面,Internet临时文件夹里会有一个页面文件,而加了,就会没有了。不过,像aspx文件中如果有图片文件或js文件,那还是会下载到Internet临时文件夹的。



会员评论列表:
正在更新的动画正在加载数据,请稍后……
针对本篇文章或本站,请您发表个人的建议或批评!

大众三七网 大众计算机学习网 谷歌搜索 百度搜索 本站仅与内容具备一定实际意义的原创网站交换友情链接,力争为大众做出更优质的服务!

All Rights Reserved 本站备案信息:滇ICP备08002715号 〖90人在线〗 站长联系方式 Email:dzwebs@126.com 关于本站