using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.Caching;
namespace HuaTong.General.Utility
{
/// <summary>
/// 缓存操作,默认缓存1分钟
/// </summary>
public
static
class CacheHelper
{
static
int
cacheTime = 1;
/// <summary>
/// 读取缓存项
/// </summary>
/// <
returns
></
returns
>
public
static
object CacheReader(string cacheKey)
{
return
HttpRuntime.Cache[cacheKey];
}
/// <summary>
/// 写入缓存项
/// </summary>
public
static
void CacheWriter(string cacheKey, object cacheValue,
int
cache_time = 0)
{
HttpRuntime.Cache.
Insert
(cacheKey, cacheValue,
null
,
DateTime.Now.AddMinutes(cache_time <= 0 ? cacheTime : cache_time),
Cache.NoSlidingExpiration);
}
/// <summary>
/// 移除指定缓存项
/// </summary>
public
static
void CacheRemove(string cacheName)
{
HttpRuntime.Cache.Remove(cacheName);
}
/// <summary>
/// 缓存对象泛型实现
/// </summary>
public
static
T ObjectReader<T>(string cacheKey =
null
)
where
T : class
{
string cachekey = typeof(T).GetHashCode() + StringHelper.ToString(cacheKey);
var obj = CacheReader(cachekey)
as
T;
return
obj;
}
/// <summary>
/// 缓存对象泛型实现
/// </summary>
public
static
void ObjectWriter<T>(T cacheValue, string cacheKey =
null
,
int
cache_time = 0)
where
T : class
{
string cachekey = typeof (T).GetHashCode() + StringHelper.ToString(cacheKey);
CacheWriter(cachekey, cacheValue, cache_time);
}
}
}