通行证: 用户 密码 域名空间  下载中心 社区论坛 信息公告 MY小屋
联系我们
设为首页
加入收藏

 

QQ,ASP,PHP,JSP,XML,SQL,.Net,编程 程序 网页图象 建站经验 私服
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿
论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图
专题 | 应用软件 | 聊天通讯 | Q Q 专栏 | 建站经验 | 在线工具 | 站长Club | 注 册 表 | 旧版
社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务
当前位置:首页>>编程开发>>NET专区>>正文 新版上线![旧版]
注:打开慢时请稍等

缓存服务 页数据缓存

http://www.iyit.net  日期:2006-8-18 18:00:17  来源:  点击:
参加讨论数据缓存介绍

ASP.NET 提供一个功能完整的缓存引擎,页面可使用该引擎通过 HTTP 请求存储和检索任意对象。ASP.NET 缓存对于每个应用程序是私有的并且将对象存储在内存中。缓存的生存期与应用程序的生存期相同,也就是说,当应用程序重新启动时,将重新创建缓存。

缓存提供了简单的词典接口,使程序员可以轻松地将对象放到缓存中以及从缓存中检索对象。在最简单的情况下,将某项放到缓存中就像向词典中添加一个词条一样:

Cache("mykey") = myValue
C# VB JScript  

检索数据就是如此简单:

myValue = Cache("mykey")
If myValue <> Null Then
    DisplayData(myValue)
End If
C# VB JScript  

对于需要更复杂功能的应用程序,ASP.NET 缓存支持清理、过期、文件依赖项和键依赖项。

  • 清理是指当内存变得很少时,缓存尝试移除不常使用和不太重要的项。希望控制清理如何发生的程序员可以在项插入到缓存时为清理程序提供提示,指出创建项的相对成本和使项保持有用而必须具有的相对访问率。

  • 过期使程序员得以提供缓存项的生存期,其时间既可以是确切时间(例如,6:00 过期),也可以是相对于项的上次使用的时间(例如,上次访问项后 20 分钟过期)。项过期后将从缓存中被移除,以后若试图检索它,将返回空值,除非将它重新插入缓存。

  • 文件和键依赖项允许缓存项的有效性基于外部文件或其他缓存项。如果依赖项改变,则缓存项失效并从缓存中被移除。有关如何使用此功能的示例,请考虑下列方案:应用程序从定期更新的 XML 文件中读取财务信息。应用程序处理文件中的数据并以可使用的格式创建表示该数据的对象图形。应用程序缓存该数据并在从中读取该数据的文件上插入依赖项。当更新该文件时,数据从缓存中被移除,应用程序可以重新读取它并重新插入该数据的更新副本。
使用数据缓存

下面的示例说明简单的缓存使用。该示例执行数据库查询并缓存结果,并在应用程序的生存期内继续使用此结果。当运行此示例时,请注意页面底部的消息。当首次被请求时,它指出数据是从数据库服务器中显式检索的。刷新页面后,页说明使用的是缓存副本。

 
VB Datacache1.aspx

[运行示例] | [查看源代码]

下一个示例说明依赖于 XML 文件的缓存项。它与第一个示例类似,但在此例中是从 XML 数据源而不是从数据库服务器中检索数据。当缓存数据时,XML 文件被添加为依赖项。

当使用页面底部的窗体添加新记录时,XML 文件被更新并且必须重新创建缓存项。

 
VB Datacache2.aspx

[运行示例] | [查看源代码]

注意:文件依赖项是通过使用 Cache.Insert 并提供引用 XML 文件的 CacheDependency 对象添加的。

Cache.Insert("MyData", Source, _
         New CacheDependency(Server.MapPath("authors.xml")))
C# VB JScript  

缓存项可以依赖于一个或多个文件或键。如前面提到的,应用程序也可以设置缓存项的过期策略。下列代码设置绝对的缓存过期时间。

Cache.Insert("MyData", Source, null, _
             DateTime.Now.AddHours(1), TimeSpan.Zero)
C# VB JScript  

相关的参数是对 DateTime.Now.AddHours(1)的调用,DateTime.Now.AddHours(1) 指示该项自插入后一小时过期。最后一个参数 TimeSpan.Zero 表示此项没有相对过期策略。

下列代码显示如何设置相对过期策略。它插入一个项,该项自上次访问后 20 分钟过期。注意 DateTime.MaxValue 的使用,它表示此项没有绝对过期策略。

Cache.Insert("MyData", Source, null, DateTime.MaxValue, _
             TimeSpan.FromMinutes(20))
C# VB JScript  

本节小结

  1. 数据缓存允许以编程方式缓存任意对象。
  2. ASP.NET 缓存支持过期和依赖项。
  3. 缓存被限制在应用程序的范围内,并且它的生存期与应用程序的生存期相同。

编辑: [发送给好友] [打印本页] [关闭窗口] [返回顶部]
上一篇:缓存服务 页片段缓存
下一篇:没有了
转载请注明来源:www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

 相关文章
最新更新 热点排行 推荐新闻
缓存服务 页数据缓存
缓存服务 页片段缓存
缓存服务 页输出缓存
缓存概述
HTTP 处理程序和工厂
缓存服务 页数据缓存
缓存服务 页片段缓存
缓存服务 页输出缓存
缓存概述
HTTP 处理程序和工厂
管理应用程序状态
使用 Global.asax 文件
ASP.NET Web 服务 应用程序概述
HTML 文本模式匹配
WebService 行为
对控件应用样式
缓存服务 页数据缓存
缓存服务 页片段缓存
缓存服务 页输出缓存
缓存概述
WIN XP蓝屏代码大全
MSN监听软件下载热 轻松监视局域网隐私
WinRAR将推出免费正版序列号!
让WinRAR汗颜的压缩软件UHARC
备份软件GHOST使用教程
[JAVA]十四种Java开发工具点评
初学java常用开发工具介绍
Win XP操作系统优化精髓
XP中重新安装或修复IE6的三种方法
轻易破解Winrar,Winzip密码
在ASP.net中保存/取出图片入/从SQL数据
一个.net 压缩位图至JPEG的代码
ASP.NET2.0数据库入门之常见错误
在ASP.NET中防止注入攻击
用ASP.NET开发Web服务的五则技巧
如何控制我的电脑只允许登录我自己的Q
QQ密码被盗怎么办!我教你找回密码
使用身份验证来禁止内部用户上网 
Win Powershell遭遇病毒 最好升级软件
SiteAdvisor 助你远离恶意网站
提升流量 站长应该做的五件事
XP中重新安装或修复IE6的三种方法
XP下Asp.net访问被拒绝
教你封杀FSO躲避FSO木马的侵扰
让WinRAR汗颜的压缩软件UHARC
 友情链接
设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
Copyrights ? 2004-2006 iYiT.Net All Rights Reserved.
网站合作、广告联系QQ:147007642、466949678
易特网络技术 点击这里给我发消息