using System.Runtime.Caching
System.Runtime.Caching 命名空间是.NET 4.0 新增的,将以前的.NET 版本中的 System.Web.Caching
单独提取出来,独立使用。
private void CacheTest()
{
ObjectCache cache = MemoryCache.Default;//声明缓存类
string myCache = cache["mycache"] as string;//获取缓存[] 在我们的中括号中的是这个缓存的名字
if (myCache == null)
{
CacheItemPolicy policy = new CacheItemPolicy();//这个对象可以设置这个缓存的过期时间,和关联对象等等等。
policy.AbsoluteExpiration = DateTime.Now.AddSeconds(10);//设置过期时间是当前时间+10秒,那么10秒后,这个缓存的项就会被移除
myCache ="123";//需要我们缓存的值,这里可以从数据库取数了
cache.Set("mycache", myCache, policy);//插入缓存
}
var m = myCache;
}
using System;
using System.Runtime.Caching;
namespace Cache.Tool
{
public class CacheHelper
{
public ObjectCache cache = MemoryCache.Default;//声明缓存类
/// <summary>
/// 设置缓存,没有其他重载方法,第一个参数name是我们的缓存的名字,第二个参数是我们需要缓存的对象,第三个是我们的过期时间默认7200秒
/// </summary>
/// <param name="name">缓存的名字</param>
/// <param name="Ovlaue">需要缓存的值</param>
/// <param name="seconds">过期时间</param>
public void Set(string name, object Ovlaue, int seconds=7200)
{
CacheItemPolicy policy = new CacheItemPolicy();
policy.AbsoluteExpiration = DateTime.Now.AddSeconds(seconds);
cache.Set(name, Ovlaue, policy);
}
/// <summary>
/// 获取缓存,传入缓存名字即可
/// </summary>
/// <param name="name">缓存的名字</param>
/// <returns></returns>
public object Get(string name)
{
return cache[name];
}
}
}