在Asp.net 2.0 中禁用页面缓存解决页面刷新(重新加载数据)的问题!
一般情况下,WEB页面都会在Internet临时文件夹中有一个临时文件.
我在操作IE时会出现这种情况:
假如说有一个页面treeview.aspx,在我第一次访问后,它会在我的Internet临时文件夹里有一个treeview.aspx文件生成.之后,如果我改了treeview.aspx,的数据后再次访问该页面,发现IE并没有对这个treeview.aspx,的数据进行更新,反而打开的是我第一次访问的页面.为什么会这样,是因为IE自动(默认)调用了Internet临时文件夹里有一个treeview.aspx,文件,而不是重新下载新的treeview.aspx,
怎样能让IE自动重新下载新的treeview.aspx呢,就像点了刷新按钮重新加载此页面一样?
一种方法是对Internet选项进行设置.
Internet选项-->常规-->Internet临时文件中"设置"-->每次访问此页时检查.
这种设置时最好同时删除临时文件.
这种方法是让客户自己设置自己的浏览器,如果客户忘记了设置,那么,新的页面总是下载不到本地.这时,客户会怎样认为呢?("肯定是程序的错!"其实也不是程序的错,但是用程序完全可以解决这个问题)
第二种方法:用程序自己来让页面自动下载.
这种方法实际上是让页面不保存到Internet临时文件夹中,每次访问页面都会让浏览器下载页面.
只要在treeview.aspx,代码的Page_Load事件中加上
Context.Response.Cache.SetCacheability(HttpCacheability.NoCache);
即可.
不防你试试.在不加这句时,你打开页面,Internet临时文件夹里会有一个页面文件,而加了,就会没有了.
不过,像aspx文件中如果有图片文件或js文件,那还是会下载到Internet临时文件夹的.