asp.net缓存

来源:互联网 发布:js当窗口大小变化 编辑:程序博客网 时间:2024/06/05 20:26

asp.net的缓存分为3种:

第一种:页面缓存

只需要在页面顶部加上:<%@OutputCache  Duration='60'  VaryByPara='none' %>

Druation:缓存时间,60秒

VaryByPara:参数,是否根据参数缓存

DisCacheEnable='true|false':缓存是否保存在磁盘

 

第二种:数据缓存

1.ie缓存:当客户浏览一个页面后,ie会自动在临时文件中生成一个此页面,所以当修改了此页面数据后再次访问改页面,数据还是以前的

此时解决办法有2个,第一个是ie--Internet选项--常规---Internet缓存文件--每次访问网页时取最新版本

但是这种方法需要让客户自己设置,不是最好的解决办法;

第二个解决办法是在页面load事件里加上这句话:

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

这样Internet临时文件里就没有用户浏览的页面了,但是如果页面有图片或js文件还是会下载到internet临时文件的

2.JS中的ShowModalDialog()函数打开ASPX页面时禁止页面缓存

解决办法:

load里加上Response.expires = -1;意思是让页面立即过期;

 

第三种:数据源缓存

 数据源:CacheExpirationPolicy="Sliding"

采用“滑动”窗口来缓存,假设缓存时间为10分钟,那么从有人访问开始10分钟缓存,只要有人访问,10分钟就从访问这一刻开始,以此类推,可以无限缓存下去

 

0 0