ICacheManager在ISingletonDependency实现中没有按预期工作

时间:2015-04-27 21:00:44

标签: orchardcms orchardcms-1.7

我开发了一个自定义搜索提供商CustomIndexProvider,实施IIndexProvider并取消Lucene.Services.LuceneIndexProvider。出于某种原因,CacheManager总是在AcquireContext方法中执行实现,并且它不会缓存。

 var mappingsFound = this.m_cacheManager.Get(cacheKey, ctx =>
            {
                ////Logic goes here
                return true/false;
            });

我的实施出了什么问题?

我是否受此问题的影响https://orchard.codeplex.com/discussions/448781

供参考:

    CustomIndexProvider调用
  1. DefaultProcessingEngine.Execute。每当需要更新我的索引时,我都会创建一个IIndexingTaskManager.CreateUpdateIndexTask任务。
  2. 我还发现CustomIndexProvider已为每项任务创建,即使它正在继承ISingletonDependency

1 个答案:

答案 0 :(得分:0)

导致此行为的一件事是,如果每次调用此代码时,您的cacheKey值都不同。