asp.net自定义缓存依赖,一次刷新所有内容我有一个自定义缓存依赖类MyCacheDependency:CacheDependency{privateconstintPoolInterval=5000;私有只读定时器_timer;私有只读字符串_readedContent;publicMyCacheDependency(){_timer=newTimer(CheckDependencyCallback,this,PoolInterval,PoolInterval);_readedContent=ReadContentFromFile();_timer){if(_readedContent!=ReadContentFromFile()){NotifyDependencyChanged(sender,EventArgs.Empty);}}}privatestaticstringReadContentFromFile(){returnFile.ReadAllText(@"C:file.txt");}protectedoverridevoidDependencyDispose(){if(_timer!=null)_timer.Dispose();base.DependencyDispose();它工作正常,但我想知道如何一次刷新所有对象。这里我在缓存中放入了2个对象Cache.Insert("c1","var1",newMyCacheDependency());Cache.Insert("c2","vae2",newMyCacheDependency());很好,但是当c1检测到更改时如何强制c2不要等待5秒进行检查,但我想在c1执行时调用它自己的DependencyDispose。换句话说,如果c1检测到更改,c2也应该调用DependencyDispose也许您可以添加一个将在CheckDependencyCallback()方法中触发的静态事件。在MyCacheDependency的构造函数中,您将附加一个事件处理程序。当事件被触发时,您可以从那里调用NotifyDependencyChanged或DependencyDispose。这样,所有MyCacheDependency对象都会对更改做出反应。以上就是C#学习教程:asp.net自定义缓存依赖,一次性刷新所有分享内容,如果对大家有用还需要进一步了解C#学习教程,希望大家多加关注——classMyCacheDependency:CacheDependency{私人常量intPoolInterval=5000;私有只读定时器_timer;私有只读字符串_readedContent;公共静态事件EventHandlerMyEvent;publicMyCacheDependency(){_timer=newTimer(CheckDependencyCallback,this,PoolInterval,PoolInterval);_readedContent=ReadContentFromFile();MyEvent+=newEventHandler(MyEventHandler);}protectedvoidMyEventHandler(objectsender,EventArgse){NotifyDependencyChanged(sender,e);}privatevoidCheckDependencyCallback(objectsender){lock(_timer){if(_readedContent!=Read(ContentFrom)File){if(MyEvent!=null)MyEvent(sender,EventArgs.Empty);}}}privatestaticstringReadContentFromFile(){returnFile.ReadAllText(@"C:file.txt");}protectedoverridevoidDependencyDispose(){if(_timer!=null)_timer.处置();根据。DependencyDispose();}}本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如有转载请注明出处:
