使用CacheManager添加Cacheitem时出错

时间:2017-02-15 18:27:39

标签: cachemanager

我正在使用CacheManager.Net,我正在尝试将CacheItem添加到ICacheManager对象,但是我得到以下异常"对象引用未设置为对象的实例。"。

以下是一些代码段:

public class ReaderController{

private ICacheManager<object> tagReadEventsCache;

public ReaderController()
{
tagReadEventsCache = CacheFactory.Build("tagReadEventsCache", settings => settings
.WithUpdateMode(CacheUpdateMode.Up)
.WithSystemRuntimeCacheHandle("Zones")
.WithExpiration(ExpirationMode.Sliding, TimeSpan.FromMilliseconds(1000)));

tagReadEventsCache.OnAdd += TagReadEventsCache_OnAdd;
}

private void TagReadEventsCache_OnAdd(object sender,                                              CacheManager.Core.Internal.CacheActionEventArgs e)
{
generalLog.Debug(e.Key + " - " + e.Region + " - " + e.GetType().ToString());
}

public void AddTagReadEventCache(List<TagRead> tagReadEvent)
{
  foreach (TagRead tag in tagReadEvent)
  {
   try
   {
     var item = new CacheItem<object>(tag.Epc, tag, ExpirationMode.Sliding,     TimeSpan.FromMilliseconds(10000));
                    //tagReadEventsCache.Put(item);
                    tagReadEventsCache.Add(item);
   }
   catch (Exception ex)
   {
    generalLog.Error("Excepcion tag " + tag.ReaderHostName, ex);
   }
  }
}
....

}

因此,当调用AddTagReadEventCache方法时,它会在尝试添加Cacheitem时生成异常,我也尝试了Put方法并且发生了同样的事情。我知道这应该是我遗失的一些小事,但我是股票,我真的很感激有人的帮助。

由于

0 个答案:

没有答案