- 浏览: 2016791 次
- 性别:
- 来自: 厦门
文章分类
- 全部博客 (1409)
- asp/asp.net学习 (241)
- oracle (10)
- delphi (295)
- java (27)
- pb (1)
- 每日点滴 (49)
- 学习方法 (40)
- 思想方面 (104)
- C语言 (5)
- C++ (1)
- 代码重构经验 (5)
- 软件工程 (3)
- 数据库 (99)
- 英语学习 (3)
- mysql (1)
- 该关注的网站或者网页 (42)
- 总结 (7)
- 要去做的事情 (33)
- 算法 (1)
- 网络方面 (29)
- 随感 (96)
- 操作系统 (36)
- UML (12)
- 常用工具的使用 (55)
- 脚本 (7)
- 汇编 (62)
- 数据结构 (2)
- 财务 (38)
- 语文作文 (16)
- 法律 (1)
- 股票 (88)
最新评论
-
devwang_com:
可以,学习了~~
列出文件夹下所有文件夹的树形结构--Dos命令 tree的使用 -
hvang1988:
不管用啊 frxrprt1.PreviewForm.Pare ...
fastReport预览时嵌入到别的窗体 -
00915132:
我也有这个疑问,非常 感 谢
left join加上where条件的困惑 --SQL优化 -
zhuyoulong:
学习了,高效读书
软件架构师要读的书 -
nTalgar:
非常感谢分享!
Application.ProcessMessages用法:
转自:http://blog.csdn.net/ws_hgo/archive/2010/04/22/5514855.aspx
(1)OutPutCache
首先说下几个重要的参数
1)Duration 页或者用户控件进行缓存的时间(单位为秒)
2)VaryByparam分号分割的字符串列表,用于使输出缓存发生变化,这些字符串与GET方法发送的查询字符串相对应,与POST发送的参数相对应,如果没有varyByParam或者VarByControl的时候页面将报错,如果不希望使用任何参数来改变指定内容请将值设置为None,否则为*
3)VaryByCustom 表示自定义输出缓存的任意版本,如果赋予给属性browser,缓存将随浏览器版本和主要版本信息的不同而异
(1)如果页面有缓存的时间大于用户控件的缓存时间则页的输出缓存时间优先
view plaincopy to clipboardprint?
<%@ Page Language="C#" %>
<%@ OutputCache Duration="50" VaryByParam="none" %>
<%@ Register src="WebUserControl.ascx" tagname="WebUserControl" tagprefix="uc1" %>
<form id="form1" runat="server">
<div>
<%Response.Write(DateTime.Now.ToString());%>
</div>
<uc1:WebUserControl ID="WebUserControl1" runat="server" />
</form>
<%@ Control Language="C#" ClassName="WebUserControl" %>
<%@ OutputCache Duration="20" VaryByParam="none" %>
<mce:script runat="server"></mce:script>
下面是自定义控件的:
<%Response.Write(DateTime.Now.ToString());%>
<%@ Page Language="C#" %>
<%@ OutputCache Duration="50" VaryByParam="none" %>
<%@ Register src="WebUserControl.ascx" tagname="WebUserControl" tagprefix="uc1" %>
<form id="form1" runat="server">
<div>
<%Response.Write(DateTime.Now.ToString());%>
</div>
<uc1:WebUserControl ID="WebUserControl1" runat="server" />
</form>
<%@ Control Language="C#" ClassName="WebUserControl" %>
<%@ OutputCache Duration="20" VaryByParam="none" %>
<mce:script runat="server"></mce:script>
下面是自定义控件的:
<%Response.Write(DateTime.Now.ToString());%>
(2)上面是在页面中定义缓存在web.config中定义如下代码(然后再页面中调用也行!)
view plaincopy to clipboardprint?
<caching>
<outputCacheSettings>
<outputCacheProfiles>
<add name="CacheProfile" duration="30" enabled="true"/>
</outputCacheProfiles>
</outputCacheSettings>
</caching>
<caching>
<outputCacheSettings>
<outputCacheProfiles>
<add name="CacheProfile" duration="30" enabled="true"/>
</outputCacheProfiles>
</outputCacheSettings>
</caching>
下面说的是缓存后替换(动态更新缓存页的部分)
{
1.以声明方式使用 Substitution 控件。
2.以编程方式使用 Substitution 控件 API。
3.以隐式方式使用 AdRotator 控件。
}
(2)Substitution 指定输出缓存页上已动态内容替换该控件的部分
实例代码如下
view plaincopy to clipboardprint?
<%@ Page Language="C#" %>
<%@ OutputCache Duration="30" VaryByParam="none" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<mce:script runat="server"><!--
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = DateTime.Now.ToString();
}
//当Substitution控件执行GetCurrentDateTime这个方法的时候该方法必须匹配
//HtttpresponseSubstitutionCallback的委托签名
public static string GetCurrentDateTime(HttpContext Content)
{
return DateTime.Now.ToString();
}
// --></mce:script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<p>下面是无缓存的</p>
<asp:Substitution ID="Substitution1" runat="server" MethodName="GetCurrentDateTime" />
<br />
<p>下面是有缓存的</p>
<asp:Label ID="Label1" runat="server" Text=""></asp:Label>
</div>
</form>
</body>
</html>
<%@ Page Language="C#" %>
<%@ OutputCache Duration="30" VaryByParam="none" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<mce:script runat="server"><!--
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = DateTime.Now.ToString();
}
//当Substitution控件执行GetCurrentDateTime这个方法的时候该方法必须匹配
//HtttpresponseSubstitutionCallback的委托签名
public static string GetCurrentDateTime(HttpContext Content)
{
return DateTime.Now.ToString();
}
// --></mce:script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<p>下面是无缓存的</p>
<asp:Substitution ID="Substitution1" runat="server" MethodName="GetCurrentDateTime" />
<br />
<p>下面是有缓存的</p>
<asp:Label ID="Label1" runat="server" Text=""></asp:Label>
</div>
</form>
</body>
</html>
(3)设置页的可缓存性
页或者自定义控件的可缓存性是指:是否在页的生命周期内在设备上缓存页,可缓存页的设备包括:发出请求的浏览器,相应请求的Web 服务器以及请求或响应流中其他任何具有缓存功能的设备,如代理服务器。
可以使用HttpCacheability
NoCache 设置 Cache-Control: no-cache 标头。如果没有字段名,则指令应用于整个请求,且在满足请求前,共享(代理服务器)缓存必须对原始 Web 服务器强制执行成功的重新验证。如果有字段名,则指令仅应用于命名字段;响应的其余部分可能由共享缓存提供。
Private 默认值。设置 Cache-Control: private 以指定响应只能缓存在客户端,而不能由共享(代理服务器)缓存进行缓存。
Server 指定响应仅缓存在源服务器上。与 NoCache 选项相似。客户机接收 Cache-Control: no-cache 指令,但文档是在原始服务器上缓存的。等效于 ServerAndNoCache。
ServerAndNoCache 指定响应仅缓存在源服务器上。与 NoCache 选项相似。客户机接收 Cache-Control: no-cache 指令,但文档是在原始服务器上缓存的。等效于 ServerAndNoCache。
Public 设置 Cache-Control: public 以指定响应能由客户端和共享(代理)缓存进行缓存。
ServerAndPrivate
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/ws_hgo/archive/2010/04/22/5514855.aspx
发表评论
-
关于 字符串中的单引号, 在sql存储过程中的传输总结; 逗号分隔的多个变量提取方法.
2011-10-14 17:49 3366摘自:http://blog.csdn.net/nutia ... -
抓取网站内容 asp.net
2011-10-11 13:28 1014HttpWebRequest myReq ... -
两个DATASET合并成一个新的DATASET
2011-09-28 18:17 2475摘自:http://topic.csdn.net/t/2 ... -
VS设置使用哪个浏览器来调试网页
2011-08-30 16:57 1159摘自:http://zhidao.baidu.com/ques ... -
可使用js获取TREE的CheckBox
2011-08-20 12:32 1056摘自:http://www.uipower.com/bb ... -
正则表达式 验证邮箱
2011-06-02 18:14 2609正则表达式 摘自:http://www.alixixi.com ... -
未能加载程序集 App_Web_vdcnimdz”错误
2011-04-25 17:38 1561问题描述: 自己的一个WebGPS程序,只是拷到了别的 ... -
.net跳到指定错误页面兵显示详细的错误信息
2011-04-14 16:48 1227.net跳到指定错误页面兵显示详细的错误信息 摘自:h ... -
注册*.ocx控件
2011-04-14 11:23 904注册*.ocx控件 问题描述:本地的网站的bin目录下有了个 ... -
C# 读取文本文件的时候出现汉字乱码
2011-04-12 16:01 2353问题描述:C# 使用ReadAllText方法读取文本文件的时 ... -
VS 2008中如何显示代码的行号
2011-04-09 09:51 1199摘自:http://zhidao.baidu.com/ques ... -
VS.NET2008可以使用书签的功能
2011-04-08 17:19 1353摘自:http://blog.csdn.net/lmh_851 ... -
两个类库要添加引用才能使用
2011-04-02 13:57 1123两个类库要添加引用才能使用 ---------------- ... -
缓存 <%@ OutputCache Duration="6000" VaryByParam="none" %>
2011-04-02 10:53 1131在页首添加: <%@ OutputCache Durat ... -
FrameSet的加载顺序
2011-04-02 09:56 3861FrameSet的加载顺序是: (1) mainFrame ... -
Response.AddHeader “P3P”,”CP=CAO PSA OUR”
2011-04-01 18:01 2469摘自:http://my.donews.com/alor ... -
Hashtable 的使用
2011-03-31 09:36 7712011-3-31 Hashtable 的使用: ... -
google地图使用(二)
2011-03-30 10:30 12872011-3-291. 今天客户反映,说GOOGLE地图上的拖 ... -
GOOGLE地图
2011-03-29 18:31 7932011-3-291. 今天客户反映,说GOOGLE地图上的拖 ... -
此组中没有可用的控件 工具箱 vs2008
2011-03-29 09:20 2060问题描述: 此组中没有可用的控件 工具箱 vs2008 ...
相关推荐
ASP.NET中缓存技术(Cache)的了解运用(项目案例一个) ASP.NET中缓存技术(Cache)的了解运用(项目案例一个) ASP.NET中缓存技术(Cache)的了解运用(项目案例一个)
ASP.NET_缓存技术 ASP.NET_缓存技术
asp.net2.0缓存文档 PDF格式
ASP.NET2010 数据库缓存 很简单的一个例子
asp.net页面缓存:片断缓存,数据缓存
asp.net缓存技术 详解 让你快速掌握asp.net缓存技术
ASP.NET 2.0快速入门(5):ASP.NET 2.0 缓存技术
ASP.NET15缓存机制 JavaScript缓存机制
作为.Net框架下开发Web应用程序的主打产品,ASP.NET充分考虑了缓存机制。通过某种方法,将系统需要的数据对象、Web页面存储在内存中,使得Web站点在需要获取这些数据时,不需要经过繁琐的数据库连接、查询和复杂的...
asp.net页面缓存技术(Cache、XML) 概述ASP.NET缓存机制
充分利用ASP.NET的三种缓存提高站点性能.docx 充分利用ASP.NET的三种缓存提高站点性能.docx
关于asp.net缓存处理和实践适用于Java,ASP.NET,PHP,Ruby等语言环境构建的应用程序。
用示例说明了ASP.NET缓存如何使用
ASP.NET 缓存:方法和最佳实践,讲解如何在ASP.NET下使用缓存技术
应用程序缓存其实现原理说来平淡无奇,仅仅是通过ASP.NET管理内存中的缓存空间。放入缓存中的应用程序数据对象,以键/值对的方式存储,这便于用户在访问缓存中的数据项时,可以根据key值判断该项是否存在缓存中。 放...
ASP.NET 数据库缓存依赖 在ASP.NET中,Cache类最酷的特点是它能根据各种依赖来良好的控制自己的行为。以文件为基础的依赖是最有用的,文件依赖项是通过使用 Cache.Insert 并提供引用文件的 CacheDependency 对象...
Asp.net 缓存技术总结,如何提高页面访问速度,如何快速打开大数据量页面?
自己整理的.net缓存资料及类型 何时用到缓存 缓存的利与弊等等
asp.net 中使用iframe动态加载页面
VS2003实现数据缓存功能,有链接数据库。VB实现