0

我有一项服务,我想在其中使用 MemoryCache,但是,我的要求之一是我需要能够手动清除所述 MemoryCache,而无需停止服务。

目前我们正在使用企业库中的 CacheManager(使用独立存储,所以我认为它在内存中,然后在需要时转储到文件),我们通过删除文件手动清除缓存。关于如何使用新的缓存库做类似事情的任何想法?

谢谢!

4

2 回答 2

2

听起来您当前使用企业库的缓存具有文件系统依赖性。您可以通过将HostFileChangeMonitor与每个缓存项相关联来对 MemoryCache 执行相同的操作。当监控的文件在磁盘上发生变化时,缓存项将被清除。

于 2014-03-13T21:09:58.193 回答
0

无法清除服务外部的缓存,因为它绑定到 AppDomain。您需要自己实现一个清除缓存的入口点。

之后,只需处理内存缓存并创建一个新缓存。

于 2013-01-07T10:37:09.903 回答