谁会asp.net中的cache应用
给点代码啊
给点代码啊
解决方案 »
- 求助:第一天上班,有什么要注意的!
- 帖子计数器达到100w,就要从0开始,是怎么回事
- 求一验证密码加长度的正则表达式
- 如何给gridview的checkbox列添加js函数来改变该checkbox所在行的背景色?
- vs2005中 asp.net 页面访问路径设置的问题
- 关于cookies的一些问题
- 请问如何做一个上传于下载的功能?
- A potentially dangerous Request.Form value错误信息,我要所有危险的字符?
- 新手问题! 未能加载类型“.Global”。
- 关于DataSet,DataTable,DataView有什么区别吗?
- 急:为什么datagrid控件中超链接列传递的参数显示不全
- 求资料啊!
using System.Web;
using System.Web.Caching;namespace AMS.Common
{
public interface ICache
{
object this[string key]
{
get;
set;
} int Count
{
get;
}
/// <summary>
/// 向Cache中插入键、值、和依赖
/// </summary>
/// <param name="key">键</param>
/// <param name="val">值</param>
/// <param name="fileDependency">依赖</param>
void Insert(string key, object val, string fileDependency); /// <summary>
/// 向Cache中插入键、值、和过期时间
/// </summary>
/// <param name="key">键</param>
/// <param name="val">值</param>
/// <param name="seconds"></param>
void Insert(string key, object val, TimeSpan span); void Remove(string key);
} /// <summary>
/// 封装ASP.NET的Cache
/// </summary>
public class ASPCacheAdapter : ICache
{
private static ICache _cache = null; private ASPCacheAdapter()
{
} public static ICache GetCache()
{
if (_cache == null)
{
_cache = new ASPCacheAdapter();
}
return _cache;
} public object this[string key]
{ get
{
return HttpRuntime.Cache[key];
}
set
{
HttpRuntime.Cache[key] = value;
}
} public int Count
{
get
{
return HttpRuntime.Cache.Count;
}
}
public void Insert(string key, object val, string fileDependency)
{
HttpRuntime.Cache.Insert(key,
val,
new CacheDependency(fileDependency));
} public void Insert(string key, object val, TimeSpan span)
{
HttpRuntime.Cache.Insert(key,
val,
null,
DateTime.Now.Add(span),
Cache.NoSlidingExpiration);
} public void Remove(string key)
{
HttpRuntime.Cache.Remove(key);
}
}
public class CacheFactory
{
public static ICache Create()
{
return ASPCacheAdapter.GetCache();
}
}
}