缓存之页面部分缓存
来源:互联网 发布:14岁 麻省理工 知乎 编辑:程序博客网 时间:2024/04/30 10:29
介绍
有时缓存整个页面是不现实的,因为页面的某些部分可能在每次请求时都需要变化
在这种情况下,只能缓存页面的一部分。顾名思义,页面部分缓存是将页面部分内容保存在内存中,
以便更快速响应用户请求,而页面其他部分内容则为动态内容。
采用页面部分缓存的技术下,经常采用先将那个页面缓存,然后替换页面中不需要缓存的部分的“缓存
后替换”的方法
“缓存后替换”主要采用Substitution控件来实现
使用Substitution控件实现页面部分缓存
数据库中的默写数据可能每时每刻都会发生变化,因此对页面的动态内容也实现缓存,则可能产生数
使用Substitution控件实现页面部分缓存
数据库中的默写数据可能每时每刻都会发生变化,因此对页面的动态内容也实现缓存,则可能产生数
据不能及时更新的问题
Substitution控件在整页缓存的前提下,指定页面中免于缓存的部分,那么页面中被缓存的区域只执行
一次,然后从缓存读取,直至该缓存到期
页面中的动态区域,即Substitution控件指定的部分,在每次请求页面时都会执行
Substitution控件 有一个重要的属性:MethodName属性所定义的方法。
用于获取或设置当Substiution控件执行时调用的方法的名称,必须符合以下3条标准
1.必须被定义为静态方法
2.必须接受HttpContext类型的参数
3.必须返回string类型的值
在运行情况下,Substitution控件将会自动调用MethodName属性所定义的方法。
该方法返回的字符串即为要在页面的内容
代码实例
<%@ OutputCache Duration="5" VaryByParam="none" %>
<form id="form1" runat="server"> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> <asp:Substitution ID="Substitution1" runat="server" MethodName="GetTime" /> <asp:Button ID="Button1" runat="server" Text="刷新" /> </form>
protected void Page_Load(object sender, EventArgs e) { Label1.Text = DateTime.Now.ToString("yyyy--MM--dd--hh--mm--ss"); } public static String GetTime(HttpContext context) { return DateTime.Now.ToString(); }
0 0
- 缓存之页面部分缓存
- 页面部分缓存
- 页面部分缓存
- 页面部分缓存概述
- 页面部分缓存概述
- 页面部分缓存概述
- 页面部分缓存概述
- 页面部分缓存概述
- 页面部分缓存概述
- 页面部分缓存
- 页面部分缓存
- 页面部分缓存2
- 页面部分缓存
- 3 页面部分缓存
- 页面部分缓存
- (转)页面部分缓存
- asp.net 页面部分缓存
- s2sh ehcache页面部分缓存
- React Native 实战系列一
- C++第三次实验项目2
- woj Divide by Six 数位dp
- 网络编程_发送端的数据来自于键盘录入案例
- -----hdu2504 又见GCD
- 缓存之页面部分缓存
- mac os 搭建arm-gcc
- Attr、Style和Theme详解
- springmvc @modelAttribute
- VRP
- POJ 3614 Sunscreen(优先队列)
- Python源码学习笔记 2 整数对象
- Accelerated C++<4-3>
- 面向过程的三种基本结构