ASP.NET项目开发指南:缓存API-使用Cache对象

 我来答
华源网络
2022-10-07 · TA获得超过5594个赞
知道小有建树答主
回答量:2486
采纳率:100%
帮助的人:147万
展开全部

     缓存API:使用Cache对象

  使用Cache对象 可以存储任何可序列化的数据对象 基于一个或多个依赖项的组合来控制缓存条目到期的方式 这些依赖项可以包括自从某对象被缓存后经过的时间 自从某对象上次被访问后经过的时间 对文件或文件夹的更改以及对其他缓存对象的更改 在略作处理后还可以包括对数据库中特定表的更改

  在Cache中存储数据的最简单的方法就是使用一个键为其赋值 就像HashTable或Dictionary对象一样

  Cache[ key ] = value ;

  这种做法将在缓存中存储项 同时不带任何依赖项 因此它不会到期 除非缓存引擎为了给其他缓存数据提供空间而将其删除 要包括特定的缓存依赖项 可使用Add()或Insert()方法 其中每个方法都有几个重载 Add()和Insert()之间的唯一区别是 Add()返回对已缓存对象的引用 而Insert()没有返回值

  Cache Insert( key myXMLFileData new System

  Web Caching CacheDependency(Server MapPath( users xml )))

  该示例可将文件中的XML数据插入缓存 无须在以后请求时从文件读取 CacheDependency的作用是确保缓存在文件更改后立即到期 以便可以从文件中提取最新数据 重新进行缓存 如果缓存的数据来自若干个文件 还可以指定一个文件名的数组

  Cache Insert( dependentkey myDependentData

  new System Web Caching CacheDependency(new

  string[] {} new string[] { key }))

  该示例可插入键值为key的第二个数据块(取决于是否存在第一个数据块) 如果缓存中不存在名为key的键 或者如果与该键相关联的对象已到期或被更新 则dependentkey的缓存条目将到期

  Cache Insert( key myTimeSensitiveData

  null DateTime Now AddMinutes( ) TimeSpan Zero)

  绝对到期 此示例将对受时间影响的数据缓存一分钟 一分钟过后 缓存将到期

  Cache Insert( key myFrequentlyAccessedData

  null System Web Caching Cache NoAbsoluteExpiration

  TimeSpan FromMinutes( ))

  动态滚动到期 此示例将缓存一些频繁使用的数据 数据将在缓存中一直保留下去 除非数据未被引用的时间达到了一分钟

  注意 动态滚动到期和绝对到期不能一起使用

  总之 缓存可以使应用程序的性能得到很大的提高 因此在设计应用程序以及对应用程序进行性能测试时应该予以考虑 应用程序总会或多或少地受益于缓存 当然有些应用程序比其他应用程序更适合使用缓存 深刻理解ASP NET提供的缓存选项对于任何ASP NET开发人员来说都至关重要

       返回目录 ASP NET项目开发指南

       编辑推荐

       ASP NET MVC 框架揭秘

       ASP NET开发宝典

lishixinzhi/Article/program/net/201311/15811

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式