为什么一个缓存依赖不能应用于多个缓存项呢?
多个缓存项同时依赖于一个缓存依赖,实际上应该没什么逻辑问题,比如文件 "c:\\test.txt" 变动时需同时清理多个缓存项。
例如页面这样写
private static CacheDependency dependercy = new CacheDependency("c:\\test.txt");
protected void SetCacheBtn_Click(object sender, EventArgs e)
{
Cache.Insert("key1","This is the Cached Data",dependercy);
Cache.Insert("key2", "This is the Cached Data", dependercy);
}
执行的时候报错:
An attempt was made to reference a CacheDependency object from more than one Cache entry.
即使设定一个失效时间的情况下,某个缓存被移除了,原来那个缓存依赖也可能无法重用,必须重新创建一个新的 CacheDependency 实例。
Cache 是怎么记录与缓存依赖的关联关系的,如缓存被移除后,怎么移除掉 Cache 与缓存依赖之间的依赖关系。