- 浏览: 2057473 次
- 性别:
- 来自: 厦门
文章分类
- 全部博客 (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 3393摘自:http://blog.csdn.net/nutia ... -
抓取网站内容 asp.net
2011-10-11 13:28 1039HttpWebRequest myReq ... -
两个DATASET合并成一个新的DATASET
2011-09-28 18:17 2512摘自:http://topic.csdn.net/t/2 ... -
VS设置使用哪个浏览器来调试网页
2011-08-30 16:57 1184摘自:http://zhidao.baidu.com/ques ... -
可使用js获取TREE的CheckBox
2011-08-20 12:32 1082摘自:http://www.uipower.com/bb ... -
正则表达式 验证邮箱
2011-06-02 18:14 2636正则表达式 摘自:http://www.alixixi.com ... -
未能加载程序集 App_Web_vdcnimdz”错误
2011-04-25 17:38 1589问题描述: 自己的一个WebGPS程序,只是拷到了别的 ... -
.net跳到指定错误页面兵显示详细的错误信息
2011-04-14 16:48 1252.net跳到指定错误页面兵显示详细的错误信息 摘自:h ... -
注册*.ocx控件
2011-04-14 11:23 937注册*.ocx控件 问题描述:本地的网站的bin目录下有了个 ... -
C# 读取文本文件的时候出现汉字乱码
2011-04-12 16:01 2423问题描述:C# 使用ReadAllText方法读取文本文件的时 ... -
VS 2008中如何显示代码的行号
2011-04-09 09:51 1236摘自:http://zhidao.baidu.com/ques ... -
VS.NET2008可以使用书签的功能
2011-04-08 17:19 1386摘自:http://blog.csdn.net/lmh_851 ... -
两个类库要添加引用才能使用
2011-04-02 13:57 1154两个类库要添加引用才能使用 ---------------- ... -
缓存 <%@ OutputCache Duration="6000" VaryByParam="none" %>
2011-04-02 10:53 1167在页首添加: <%@ OutputCache Durat ... -
FrameSet的加载顺序
2011-04-02 09:56 3895FrameSet的加载顺序是: (1) mainFrame ... -
Response.AddHeader “P3P”,”CP=CAO PSA OUR”
2011-04-01 18:01 2530摘自:http://my.donews.com/alor ... -
Hashtable 的使用
2011-03-31 09:36 8052011-3-31 Hashtable 的使用: ... -
google地图使用(二)
2011-03-30 10:30 13222011-3-291. 今天客户反映,说GOOGLE地图上的拖 ... -
GOOGLE地图
2011-03-29 18:31 8232011-3-291. 今天客户反映,说GOOGLE地图上的拖 ... -
此组中没有可用的控件 工具箱 vs2008
2011-03-29 09:20 2111问题描述: 此组中没有可用的控件 工具箱 vs2008 ...
相关推荐
数据缓存则用于存储应用程序中使用的数据,如数据库查询结果,这减少了对数据库的访问,提高了响应速度。 ASP.NET 2.0中的缓存策略包括: 1. **绝对过期**:设置一个固定的时间间隔,到达这个时间后,缓存项将被...
在ASP.NET 2010中,它提供了高效且灵活的数据缓存机制,以减少对数据库的频繁访问,从而降低服务器负载,提升用户体验。本文将深入探讨这个主题,并通过一个简单的例子来阐述其工作原理。 首先,我们要理解数据库...
Insert() 方法用于覆盖 ASP.NET 缓存中现有的缓存项,而 Add() 方法只用于在 ASP.NET 缓存中添加新的缓存项。 输出缓存和数据缓存都是提高 ASP.net 应用程序性能的重要技术。它们可以减少服务器的负载,提高页面的...
本文将深入探讨ASP.NET缓存的各个方面,包括基本概念、种类、工作原理以及如何在实际应用中有效利用。 一、缓存的基本概念 缓存是一种存储机制,它临时存储经常访问的数据以便快速访问。在ASP.NET中,缓存主要分为...
首先,我们需要了解ASP.NET缓存的两个主要类别:Application Cache和Page Output Cache。Application Cache主要用于存储对象,例如数据库查询结果,而Page Output Cache则用于缓存整个网页内容,减少服务器生成页面...
ASP.NET的缓存技术是提高Web应用程序性能的关键工具,它允许开发者存储常用数据,避免频繁地从数据库中读取,从而显著减少服务器负载和响应时间。在这个项目案例中,我们将深入探讨ASP.NET中的Cache机制,了解其工作...
然而,在ASP.NET中,直接使用`HashTable`作为全局缓存可能并不理想,因为ASP.NET提供了更高级的缓存管理工具,如`System.Web.Caching.Cache`类。`Cache`对象是ASP.NET应用程序的内置缓存机制,提供了过期策略、依赖...
ASP.NET缓存技术是提升应用程序性能的关键手段,它通过存储常用数据或计算结果,避免了重复的数据库查询或计算,从而显著减少了响应时间。本文主要总结了ASP.NET中的各种缓存策略及其应用。 首先,我们要了解缓存的...
在 ASP.NET 页面中使用 OutputCache,可以通过在页面顶部添加指令来实现: ```html *" %> ``` - `Duration`:指定缓存的有效时长,单位为秒。例如,“60”表示缓存有效期为 60 秒。 - `VaryByParam`:指定缓存是否...
ASP.NET缓存是微软开发的Web应用程序框架中的一个重要特性,用于提高网站性能和减少服务器负载。缓存技术在.NET框架中扮演着至关重要的角色,它能够存储数据以便快速访问,从而减少对数据库或其他慢速资源的依赖。在...
总之,ASP.NET缓存是一个多维度的优化策略,它涵盖了从客户端到服务器端的各个层面。合理运用缓存技术,可以大幅提升用户体验,降低服务器负载,是构建高性能Web应用的基石。开发者应根据实际需求选择合适的缓存策略...
在ASP.NET 15中,缓存机制得到了进一步的优化,使得开发者可以更好地利用内存资源,减少对数据库和其他资源的访问,从而提升网站响应速度和用户体验。 一、ASP.NET 缓存简介 ASP.NET 的缓存系统分为两种主要类型:...
ASP.NET数据缓存技术是微软开发的Web应用程序框架ASP.NET中的一个重要特性,它主要用于提高网站性能,通过将常用数据暂存于内存中,避免频繁访问数据库,从而减少服务器的负载和响应时间。在这个主题中,我们将深入...
在ASP.NET 2.0中,缓存技术是提高应用程序性能的关键工具之一,允许开发者存储经常访问的数据,减少对数据库或其他资源的依赖,从而提升响应速度。在这篇文章中,我们将深入探讨ASP.NET 2.0缓存技术的基础知识和应用...
本文将详细介绍如何在ASP.NET (C#) 应用程序中实现显示所有缓存以及清除所有缓存的功能。 #### 1. 缓存的概念 缓存是一种临时存储数据的方法,目的是为了快速访问这些数据。在ASP.NET中,有两种主要类型的缓存:...
1. `Insert`方法:类似`MemoryCache.Add`,但ASP.NET Cache提供了更多的缓存依赖选项,如页面输出缓存、文件系统缓存依赖等。 2. `Get`和`Remove`方法与`MemoryCache`相似。 3. `CacheDependency`类:用于创建缓存...
本文将深入探讨ASP.NET缓存管理及其更新策略。 首先,ASP.NET提供两种主要的缓存机制:Application Cache(应用程序缓存)和HttpRuntime.Cache(运行时缓存)。Application Cache主要用于存储全局性、在整个应用...