asp.net 之高速缓存

一、输出高速缓存

页面顶部插入:

<%@ OutputCache Duration="60"  VaryByParam="None" %>

<%@ OutputCache Duration="60"  VaryByParam="id;page" %>

 

二、部分页面高速缓存 (UserControl)

<%@ OutputCache Duration="60" VaryByParam="*" Shared="true" %>

 

三、Post-Cache Substitution

1.调用新方法Response.WriteSubstitution,给它传送对替换方法回调的引用。

2.在页面上的指定位置添加一个<asp:Substitution>控件,把它的methodName属性设置为回调方法的名称

 

四、HttpCachePolicy和客户端高速缓存

<%@ Import NameSpace=”System.Web.HttpCachePolicy” %>
Response.Cache.SetExpires(DateTime.Now.AddSeconds(10))‘指定页面输出缓存下一个10秒到期
Response.Cache.SetCacheability(HttpCacheability.Public) ‘指定所有用户都有对缓存的访问权力
如果不希望进行页面缓存,可采用Response.Cache.SetSlidingExpiration方法,当其为True时,每次页面请求到达时,相当于页面过期时间到了,就要对页面输出重新刷新 。
Response.Cache.SetSlidingExpiration(True)‘当每次页面请求时,重置到期时间计数器,并且页面到期
eg:
void Page_Load(s As Object, E As EventArgs)
{
Response.Cache.SetExpires(DateTime.Now.addseconds(10));

Response.Cache.SetCacheability(Httpcacheability.Public);

lblTime.Text ="现在时间是:" & DateTime.Now.ToString();
}

 

五、编程高速缓存

Cache[""] = object;

 

六、同一Request中缓存

 HttpContext.Current.Items.Add(object objKey, object objVal);

  * 此缓存只在同一Request中共享。如页面A.ASPX.CS中生成的Item。当用Server.Trancfer("B.ASPx")转向时,可以在B中获取或使用A中生成的Item。相反,Redirect("")则不能。前者发生在服务器端,和A是同一Request

******** 缓存依赖Cache dependency ********

转载于:https://www.cnblogs.com/bndy/archive/2010/06/29/1767183.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值