EnterpriseLibrary CacheManager在应用程序重新启动后消失
本文关键字:消失 重新启动 应用程序 CacheManager EnterpriseLibrary | 更新日期: 2023-09-27 18:27:02
我有一个C#WPF应用程序。我最近发现了Microsoft企业库缓存选项。
我在应用程序中添加了以下代码:
ICacheManager oCacheManager = CacheFactory.GetCacheManager();
if (!oCacheManager.Contains("TESTING"))
{
//
// Code which populates myDictionary object
//
oCacheManager.Add("TESTING", myDictionary);
if (oCacheManager.Contains("TESTING"))
Console.WriteLine("Stored!");
}
else // below never gets hit
{
Console.WriteLine("Found It!");
CachedObjects = (Dictionary<string, object>)oCacheManager.GetData("TESTING");
}
每次运行应用程序时,它都会输出"已存储!"。它从不输出"找到它!"。这意味着每当应用程序关闭时,缓存都会被抛出。有没有一种方法可以持久化它,以便在以后每次启动时都能找到缓存并加载它?
感谢
缓存对象的默认存储是NullBackingStore,这实际上意味着对象仅缓存在内存中。其他选项是IsolatedStorageBackingStore(写入用户的隔离存储中的磁盘)和DatabaseBackingStore)(写入数据库)。这两者都将比NullBackingStore慢得多,但数据将在重新启动后保留。