.net MemoryCache保存到文件
我正在使用MemoryCache在我的MVC web应用程序中缓存值。是否可以将MemoryCache集合值保存到文件中,然后加载它们?认为理论上是可能的,使用反射将所有数据复制到某个简单的json对象,然后将其序列化为字符串并存储在磁盘上。当需要检索对象时,您需要再次借助反射从json构建新的MemoryCache实例 可能它还包括一些二进制序列化的变体,或者将对象强制转换为字节流,然后保存。您可以 这是一个样本.net MemoryCache保存到文件,.net,c#-4.0,memorycache,.net,C# 4.0,Memorycache,我正在使用MemoryCache在我的MVC web应用程序中缓存值。是否可以将MemoryCache集合值保存到文件中,然后加载它们?认为理论上是可能的,使用反射将所有数据复制到某个简单的json对象,然后将其序列化为字符串并存储在磁盘上。当需要检索对象时,您需要再次借助反射从json构建新的MemoryCache实例 可能它还包括一些二进制序列化的变体,或者将对象强制转换为字节流,然后保存。您可以 这是一个样本 public static class Cashing {
public static class Cashing
{
public static void SetData<T>(string CacheKey, T data)
{
ObjectCache cache = MemoryCache.Default;
if (cache.Contains(CacheKey))
cache.Remove(CacheKey);
CacheItemPolicy cacheItemPolicy = new CacheItemPolicy();
cacheItemPolicy.AbsoluteExpiration = DateTime.Now.AddHours(1.0);
cache.Add(CacheKey, data, cacheItemPolicy);
}
public static object GetData<T>(string CacheKey)
{
ObjectCache cache = MemoryCache.Default;
if (cache.Contains(CacheKey))
return cache.Get(CacheKey);
return default(T);
}
}