如何更新企业库缓存数据

时间:2012-12-11 11:14:25

标签: caching enterprise-library

我有一个场景,我们需要请求4年的数据。我已经成功地将企业库与内存缓存挂钩。

问题是请求4年数据并在本地存储需要很长时间。另一种方法是根据需要请求1年的数据和随后的3年,并在本地缓存上添加

有人可以帮助我如何在现有缓存​​数据上添加数据,以及如何更新缓存的密钥?

1 个答案:

答案 0 :(得分:2)

Enterprise Library不会也无法知道如何将数据附加到您的对象。为此,您需要从缓存中获取对象,将新数据添加到对象,并使用相同的密钥将对象添加回缓存。现有的缓存对象将替换为新的缓存对象。它看起来像下面的代码。

string key = "key";

// get the existing cached data
var list = (List<object>) cacheManager.GetData(key);

// if there was no existing data, list will be null, so initialize it
if (list == null)
    list = new List<object>();

// add the new data
list.Add(new object());

// add the data back to the cache
cacheManager.Add(key, list);
相关问题