我有一个包含一些信息的静态类
public static class SampleDataCache
{
private static Dictionary<string,SampleData> cacheDict = new Dictionary<string,object>()
public static Get(string key)
{
if(!cacheDict.Contains[key])
cacheDict.Add(key,new SampleData());
return cacheDict[key];
}
}
当我刷新页面时,我希望 SampleDataCache 保留其数据。
我可以用简单的方法实现吗?
最佳答案
由于缓存以其当前形式存储在内存中,因此当页面刷新时数据自然会被遗忘 - 这是从那里开始的应用程序的新实例。但是,您可能有兴趣利用独立存储来持久保存每个用户的数据。
使用隔离存储,您基本上拥有一个包含的文件系统,您可以在其中存储数据,然后进一步检索它。朝着正确方向迈出的一步可能是创建一个类来表示缓存数据的“片段”,使其可序列化,然后使用静态类作为缓存 Controller ,您可以从隔离存储读取这些对象以及将这些对象写入隔离存储。
关于c# - 在 Silverlight 中缓存静态类的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5018410/