ASP.NET 缓存(9)

本文介绍如何使用AggregateCacheDependency类合并多个依赖,以创建一个依赖多个资源的缓存项。通过示例代码展示如何实现当多个文件或缓存项发生变化时触发缓存失效。

聚集依赖

有时候,你可能想要合并几个依赖,以此来创建一个依赖多个资源的缓存项。比如,你可能想要创建一个缓存项,当三个文件中的任何一个文件改变的时候,它会失效,或者你想要创建一个缓存项,当一个文件改变或者别的缓存项被移除的时候,它会失效。

创建这些规则十分简单,使用AggregateCacheDependency类就行。

AggregateCacheDependency 可以包裹多个CacheDependency对象。你要做的就是提供一个CacheDependency对象数组,使用AggregateCacheDependency.Add()方法。

Here’s an example that makes a cached item dependent on two files:

下面的代码把缓存依赖在2个文件上
CacheDependency dep1 = new CacheDependency(Server.MapPath("ProductList1.xml"));
CacheDependency dep2 = new CacheDependency(Server.MapPath("ProductList2.xml"));
// Create the aggregate.
CacheDependency[] dependencies = new CacheDependency[]{dep1, dep2};
AggregateCacheDependency aggregateDep = new AggregateCacheDependency();
aggregateDep.Add(dependencies);
// Add the dependent cache item.
Cache.Insert("ProductInfo", prodInfo, aggregateDep);

这个例子不是特别实用,因为你可以创建一个文件名数组,应用到缓存依赖上,实现同样的效果。AggregateCacheDependency在你依赖使用多个不同类型的依赖项非常有效。你可以创建一个依赖项包含文件依赖,SQL缓存一类和自定义缓存依赖。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值