【我的理解】页面缓存常用在网站上。Web应用系统上也用,但由于Web系统常与数据库打交道。时效性要求蛮强的,所以是否能用缓存得具体情况具体分析(很喜欢这句话“具体情况具体分析”,很符合国人的中庸之道)
【我是怎么用的】
<%@ OutputCache CacheProfile="test" VaryByParam="none" %>
参数分析:
<!--输出缓存 时间20s
varyparams:定义的缓存方式,有下面几中值 none asp.net只保存缓存页面的一个副本 * 表示当请求中带有查询字符事,会按照不同的参数缓存独立的页面副本 VaryByParam 也可以是按照某个参数名进行缓存,其它参数将被忽略。例如 key;name;sex -->
这样页面缓存就用上了。
部分页缓存,结果用户控件使用。
需将页面要缓存的一部分放入到一个用户控件中,然后就OutputCache 得指令加入到用户控件上。这样也没不会被缓存,用户控件被缓存了。
但是,如果用户控件里有个属性,需要页面对其赋值,则此时页面会出错。因为用户控件已经缓存,不能通过代码与页面进行交互。
(记住)
Web.config 配置缓存。
< system.web> < caching> < outputCacheSettings> < outputCacheProfiles> < add name ="test " duration ="10 "/> </ outputCacheProfiles> </ outputCacheSettings> </ caching> 此时 页面上需要 <% @ OutputCache CacheProfile="test" VaryByParam="none" %>
(源码还带有其它的一些缓存形式。先一次性分享出来)