2010-11-17 79 views
0

我想要监视由我的应用程序在企业库缓存机制中存储的键名和值。监视企业库缓存

我们正在使用内存设置。基本上,我只需要弄清楚如何转储当前存储的密钥。

我看到ICacheManager返回一个有计数器的对象,但似乎没有办法访问缓存的项目,除非您已经知道该密钥。

想法?

回答

1

你是对的 - Enterprise Lib不公开内存中的CashManager缓存。但是......总是有一种解决方法。您可以参考下载的sourced作为项目修改原始的CacheManager以公开具有名为CurrentCacheState的属性并且仅仅是散列表的缓存实例。 然后你会做通常的foreach:

foreach(DictionaryEntry d in myExposedCacheManager.RealCache.CurrentCacheState) 
    { 

     Console.WriteLine(d.Key.ToString(), d.Value.ToString(); 
    } 
+0

感谢您的信息。我希望我忽略了一些东西,但是这样做会很好。 – NotMe 2010-11-18 15:02:58