聚集依赖

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

创建这些规则十分简单,使用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缓存一类和自定义缓存依赖。


















本文转自cnn23711151CTO博客,原文链接:http://blog.51cto.com/cnn237111/589204  ,如需转载请自行联系原作者