当前位置:  编程技术>.net/c#/asp.net

清除aspx页面缓存的程序实现方法

    来源: 互联网  发布时间:2014-11-01

    本文导语:  本文实例介绍了清除aspx页面缓存的程序实现方法,具体步骤如下: 所有用到页面缓存的aspx页面修改以下cs,让它继承一个自定义基类(例如:PageCacheBase); PageCacheBase 的 Page_Load 加入以下代码: string cacheKey = Request.Url.ToString();...

本文实例介绍了清除aspx页面缓存的程序实现方法,具体步骤如下:

所有用到页面缓存的aspx页面修改以下cs,让它继承一个自定义基类(例如:PageCacheBase);
PageCacheBase 的 Page_Load

加入以下代码:

string cacheKey = Request.Url.ToString(); 
Cache[cacheKey] = new object(); 
Response.AddCacheItemDependency(cacheKey);

这样就能在应用程序(整个网站)Cache里遍历缓存项(包括这些aspx页面的缓存依赖项)了,我把他们绑定到DataGrid:

private void bindCache() 
{ 
DataTable dt = new DataTable(); 
dt.Columns.Add("CacheName",typeof(string)); 
dt.Columns.Add("CacheType",typeof(string)); 
IDictionaryEnumerator CacheEnum = 
HttpRuntime.Cache.GetEnumerator(); 
while (CacheEnum.MoveNext()) 
{ 
DataRow dr = dt.NewRow(); 
dr["CacheName"] = CacheEnum.Key; 
dr["CacheType"] = CacheEnum.Value.GetType(); 
dt.Rows.Add(dr); 
} 

DataView dv = dt.DefaultView; 
dv.Sort = "CacheName"; 
this.DataGrid1.DataSource =dt; 
this.DataGrid1.DataBind(); 
} 

删除就简单了,实现代码如下:

string cacheKey = e.Item.Cells[0].Text; 
if(Cache[cacheKey]!=null) 
{ 
Cache.Remove(cacheKey); 
bindCache(); 
}

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ I/O 成员 clear():清除状态标志
  • php压缩html(清除换行符,清除制表符,去掉注释标记)
  • C++ I/O 成员 unsetf():清除格式标志
  • 如何清除Linux命令的历史记录(清除不该保留的命令)
  • 不同版本MSSQL清除日志方法介绍
  • 文件清除工具 Eraser
  • linux僵尸(zombie)进程介绍及清除
  • 如何清除history和last命令中显示的东东?
  • wtmp清除工具 wtmpclean
  • 如何用按钮触发事件以清除session中的变量?
  • 我的IE输入form中保存了我以前输入的历史记录,我怎么清除?
  • 简单问题,怎么清除命令提示
  • 移动开发 iis7站长之家
  • 如何清除刚刚被绑定的端口???
  • rootkit清除工具 GMER
  • 请教各位:javabean被使用后需要清除吗?
  • 清除CMOS密码
  • 清除ComBox中所有项的方法是CleanItem还是别的什么?
  • 如何手动清除一个对象
  • 如何清除消息队列????
  • 如何清除Linux命令的历史记录


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3