缓存应用程序数据(一)

  ASP.NET使用缓存机制,将需要大量服务器资源来创建的对象存储在内存中。缓存这些类型的资源会大大改进应用程序的性能。缓存是有Cache类实现的,可以通过对缓存设置优先级CacheItemPriority枚举值控制内存不够时的“清理”优先顺序。还可以为缓存设置过期策略,以及为缓存设置依赖项

一、添加(将数据项添加到缓存中)

     1、通过键值对添加

Cache["CacheItem"] = "Cached Item";

 2、通过Insert 方法添加

          Insert 方法向缓存添加项,并且已经存在与现有项同名的项,则缓存中的现有项将被替换。

Cache.Insert("CacheItem", "Cached Item");

3、指定依赖项并添加(对添加到缓冲中的数据项指定依赖项)

          数据项依赖一个字符串数组对象的情况:

string[] dependencies = { "Dependences" };
Cache.Insert("CacheItem",
    "Cached Item",
    new System.Web.Caching.CacheDependency(null, dependencies));
数据项依赖一个XML文件的情况:

Cache.Insert("CacheItem", "Cached Item",
    new System.Web.Caching.CacheDependency(
    Server.MapPath("XMLFile.xml")));
  数据项依赖多个依赖项的情况:

System.Web.Caching.CacheDependency dep1 = 
    new System.Web.Caching.CacheDependency(Server.MapPath("XMLFile.xml"));
string[] keyDependencies2 = { "CacheItem1" };
System.Web.Caching.CacheDependency dep2 = 
    new System.Web.Caching.CacheDependency(null, keyDependencies2);
System.Web.Caching.AggregateCacheDependency aggDep = 
    new System.Web.Caching.AggregateCacheDependency();
aggDep.Add(dep1);
aggDep.Add(dep2);
Cache.Insert("CacheItem", "Cached Item", aggDep);

4、设置过期策略并添加

          添加一分钟绝对过期时间到缓存中:

Cache.Insert("CacheItem", "Cached Item",
    null, DateTime.Now.AddMinutes(1d), 
    System.Web.Caching.Cache.NoSlidingExpiration);
添加10 分钟弹性过期时间到缓存中:

Cache.Insert("CacheItem", "Cached Item",
    null, System.Web.Caching.Cache.NoAbsoluteExpiration,
    new TimeSpan(0, 10, 0));

 5、设置优先级并添加

          调用 Insert 方法,从 CacheItemPriority 枚举中指定一个值。

Cache.Insert("CacheItem", "Cached Item",
    null, System.Web.Caching.Cache.NoAbsoluteExpiration,
    System.Web.Caching.Cache.NoSlidingExpiration,
    System.Web.Caching.CacheItemPriority.High, null);

 6、通过Add方法添加

          Add 方法将返回您添加到缓存中的对象。另外,如果使用 Add 方法,并且缓存中已经存在与现有项同名的项,则该方法不会替换该项,并且不会引发异常。

string CachedItem = (string)Cache.Add("CacheItem",
    "Cached Item", null,
    System.Web.Caching.Cache.NoAbsoluteExpiration,
    System.Web.Caching.Cache.NoSlidingExpiration, 
    System.Web.Caching.CacheItemPriority.Default,
    null);


转载地址: http://www.cnblogs.com/max007super/archive/2009/02/10/1387833.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值