清除aspx页面缓存的程序实现方法
本文实例介绍了清除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(); }
相关推荐
-
CodeIgniter启用缓存和清除缓存的方法
Codeigniter支持缓存技术,以达到最快的速度.尽管CI已经相当高效了,但是网页中的动态内容.主机的内存CPU和数据库读取速度等因素直接影响了网页的加载速度.依靠网页缓存,你的网页可以达到近乎静态网页的加载速度,因为他们将程序输出的结果保存到硬盘上了. 缓存是怎么工作的? CI支持每个页面单独缓存,而且可以设置缓存更新时间.当一个网页第一次被加载的时候,缓存文件将被保存到application/cache文件夹.下次访问的时候,系统就会直接读取缓存文件,然后返回给用户的浏览器.如果缓存文件
-
php 文件夹删除、php清除缓存程序
复制代码 代码如下: <?php header('content-type:text/html;charset=utf-8'); function delFile($fpath) { $filesize = array(); $filepath = iconv('gb2312', 'utf-8', $fpath); if (is_dir($fpath)) { if ($dh = opendir($fpath)) { while (($file = readdir($dh)) !== false)
-
ASP.NET 清除模式窗口数据缓存的操作方式
使用模式窗口showModalDialog()弹出页面在asp.net中经常用到 用的最多的就是点击"修改"按钮,弹出修改页面:修改成功之后,关闭修改页面,刷新父页面. 目前存在的一个问题是,刷新完父页面之后,再点击修改按钮弹出修改页面,修改页面显示的数据却不是修改后的数据,还是第一次弹出修改页面的旧数据,这里就涉及到了清除模式窗口缓存数据的问题. 这涉及到ShowModalDialog缓存机制的问题,需要我们手动添加一些代码来清除缓存. 操作方式如下: 首先在前台界面(即aspx的界
-
ThinkPHP实现一键清除缓存方法
很多的开源cms系统都有一键清除缓存的功能,缓存是为了减轻服务器的压力而产生的,但是同时有缓存的存在也可能使一些数据不能实时更新,对此,我们就来实现一个ThinkPHP的清理缓存的功能.代码如下: ThinkPHP后台执行的代码: //获取要清楚的目录和目录所在的绝对路径 public function cache(){ ////前台用ajax get方式进行提交的,这里是先判断一下 if($_POST['type']){ //得到传递过来的值 $type=$_POST['type']; //将
-
防止网页后退 asp禁止缓存
像一般网上很多禁止缓存的代码,有时并不可靠,这时你只要在操作的页面加上就可以了,在网页的里指定要定向的新页,再点后退,看是不是不会再退到刚才的操作页面了,实际上已经把这个历史给删除了 ''''''''''''''''''''''''''''''''''''''''ASP 脚本 Response.Buffer = True Response.ExpiresAbsolute = Now() - 1 Response.Expires = 0 Response.CacheControl = "
-
ASP.NET页面在IE缓存的清除办法
以前没有注意到这个问题,今天在看Blog的时候发现有篇文章不错,或许以后值得借鉴: 一般情况下,WEB页面都会在Internet临时文件夹中有一个临时文件.我在操作IE时会出现这种情况:假如说有一个页面Page1.aspx,在我第一次访问后,它会在我的Internet临时文件夹里有一个Page1.aspx文件生成.之后,如果我改了Page1.aspx的数据后再次访问该页面,发现IE并没有对这个Page1.aspx的数据进行更新,反而打开的是我第一次访问的页面.为什么会这样,是因为IE自动(默认)
-
ASP.NET性能优化之让浏览器缓存动态网页的方法
OutputCache是针对所有访问服务器资源的用户,本篇要介绍的浏览器缓存则是针对单个用户,让浏览器在我们的控制下彻底不持续访问服务器上的动态内容,也就是我们要让浏览器变成我们的缓存机制中的一部分,在某些特定的场景下最大化地提升ASP.NET站点的性能.如果说OutputCache是从广度上提升并发效率,则浏览器缓存是从深度上提升效率. 一:HTTP头简介 1.1浏览器第一次请求 假设我们请求一个URL地址,譬如我服务器上的一个静态页面http://192.168.0.77/luminji2/
-
浅析HTTP消息头网页缓存控制以及header常用指令介绍
网页的缓存是由HTTP消息头中的"Cache-control"来控制的,常见的取值有private.no-cache.max-age.must-revalidate等,默认为private.其作用根据不同的重新浏览方式分为以下几种情况:(1) 打开新窗口值为private.no-cache.must-revalidate,那么打开新窗口访问时都会重新访问服务器.而如果指定了max-age值,那么在此值内的时间里就不会重新访问服务器,例如:Cache-control: max-age=5
-
各类常见语言清除网页缓存方法汇总
本文实例汇总了各类常见语言清除网页缓存方法.分享给大家供大家参考.具体实现方法如下: 一般来说,清除缓存我们只需要设置页面为no-cache就可以了,当然像asp,php这种只需要设置Expires操作即可,具体如下. HTML网页: 复制代码 代码如下: <META HTTP-EQUIV="pragma" CONTENT="no-cache"> <META HTTP-EQUIV="Cache-Control" CONTENT=
-
网页缓存文件批量改名工具
学习脚本离不开借鉴... 在这里提供一个工具,原创的.请大家善用之. Temporary Internet Files文件批量改名工具,用来提取网页缓存. Temporary Internet Files文件批量改名工具(演示版) function killErrors() {this.location.href="error.htm"} //window.onerror = killErrors var fso = new ActiveXObject("Scripting.
-
PHP Squid中可缓存的动态网页设计
当然,前提要先打开CDN中一个功能reload_into_ims on.这样用户发送过来no-cache也不怕了.因为这样会给给no-cache转成If-Modified-Since .所以我们写程序主要是对If-Modified-Since控制就好了.记的,缓存系统架构中计中最好是后端来控制,所以最好的方法是程序来管理过期.呵,我只会php,就用php写一个,别的程序也是一样 见我下面的程序,呵呵,5分钟过期. <?php $headers = apache_request_headers()
随机推荐
- AngularJS ui-router (嵌套路由)实例
- 正则表达式截取字符串的方法技巧
- jquery formValidator插件ajax验证 内容不做任何修改再离开提示错误的bug解决方法
- jsp实现生成中国国旗图片效果代码
- fckeditor 修改记录添加行距功能插件
- CentOS 6.6下Redis安装配置记录
- java 中modCount 详解及源码分析
- js由下向上不断上升冒气泡效果实例
- 挑战最棒的留言本的源码(一)
- android使用gesturedetector手势识别示例分享
- 几乎被设计师遗忘了的标签fieldset legend
- js实现获取焦点后光标在字符串后
- asp与js的类型转换函数介绍
- iframe里使用JavaScript控制主页转向的方法
- jQuery实现仿美橙互联两级导航菜单的方法
- 判断js对象是否拥有某一个属性的js代码
- IIS 应用程序保护级别说明
- JavaWeb学习过程之MVC查询模式详解
- Bootstrap 实现查询的完美方法
- 女人每天喝多少水为宜?