对Cache进行浏览并管理。例子
<%@ Page Language="C#" EnableViewState = "true"%>
<%@ import Namespace="System" %>
<%@ import Namespace="System.Configuration" %>
<%@ import Namespace="System.Collections" %>
<%@ import Namespace="System.Collections.Specialized" %>
<%@ import Namespace="System.Data" %>
<script runat="server">
//http://aspalliance.com/aldotnet/examples/cacheviewer.aspx
//http://scottwater.com
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
hlRefresh.NavigateUrl = Request.RawUrl;
BindGrid();
}
}
//绑定到DataGrid
private void BindGrid()
{
//创建arraylist来保存cacheditem信息
ArrayList al = new ArrayList();
IDictionaryEnumerator CacheEnum = Cache.GetEnumerator();
while (CacheEnum.MoveNext())
{
al.Add(new CachedItem(CacheEnum.Key.ToString(),CacheEnum.Value.GetType().ToString()));
}
litCount.Text = al.Count.ToString();
dgCachedItems.DataSource = al;
dgCachedItems.DataBind();
}
//删除Cache项
protected void Grid_ItemCommand(object sender, DataGridCommandEventArgs e)
{
HyperLink l = (HyperLink)e.Item.FindControl("CacheItemName");
//确保我们找到了该项
if(l != null)
{
Cache.Remove(l.Text);
}
this.BindGrid();
}
protected void Grid_Created(object sender, DataGridItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
((Literal)e.Item.FindControl("Counter")).Text = (e.Item.ItemIndex + 1).ToString();
}
}
private class CachedItem
{
public CachedItem(){}
public CachedItem(string key, string type)
{
this.CacheKey = key;
this.CacheType = type;
}
private string _cacheKey;
public string CacheKey
{
get {return this._cacheKey;}
set {this._cacheKey = value;}
}
private string _cacheType;
public string CacheType
{
get {return this._cacheType;}
set {this._cacheType = value;}
}
}
//Remove All
void lbRemoveAll_Click(object sender, EventArgs e)
{
IDictionaryEnumerator CacheEnum = Cache.GetEnumerator();
while (CacheEnum.MoveNext())
{
Cache.Remove(CacheEnum.Key.ToString());
}
BindGrid();
}
</script>
<html>
<head>
<title>Cache管理器</title>
<style>
TD,A,P,SPAN {font-size:9pt;}
.Header {background-color:#EDEDED;text-align:center;font-weight:bold;}
</style>
</head>
<body >
<form runat="server">
浏览、删除缓存
<br/>
数量:
<asp:Literal id="litCount" runat="server"></asp:Literal>
<br/>
<asp:LinkButton id="lbRemoveAll" onclick="lbRemoveAll_Click" runat="server">清除全部缓存项</asp:LinkButton>
<br/>
<asp:HyperLink id="hlRefresh" Text="刷新" Runat="server"></asp:HyperLink>
<br/><br/>
<asp:DataGrid id="dgCachedItems" runat="server" OnItemCommand="Grid_ItemCommand"
AutoGenerateColumns="False" OnItemCreated="Grid_Created">
<HeaderStyle CssClass="Header"></HeaderStyle>
<Columns>
<asp:TemplateColumn HeaderText="数量">
<ItemTemplate>
<asp:Literal id="Counter" runat="server" />
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="键">
<ItemTemplate>
<asp:HyperLink id="CacheItemName" runat="server" Target="_blank"
Text='<%# ((CachedItem)(Container.DataItem)).CacheKey %>'
NavigateUrl = '<%# ((CachedItem)(Container.DataItem)).CacheKey %>'/>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="类型">
<ItemTemplate>
<asp:Literal id="CacheItemDataType" runat="server"
text='<%# ((CachedItem)(Container.DataItem)).CacheType %>' />
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="删除">
<ItemTemplate>
<asp:LinkButton ID="RemoveButton" Text="删除" CommandName="RemoveFromCache"
runat="server" />
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
</form>
</body>
</html>
分享到:
相关推荐
消除浏览器的301重定向缓存 浏览器的301重定向缓存是一种常见的问题,当用户输入特定的URL时,浏览器会自动重定向到另一个URL,而不管用户的意图是什么。这是因为浏览器会缓存301重定向的结果,以便加快网页的加载...
Memory Cache 是浏览器在内存中存储的缓存,主要包含当前页面中已经下载的资源,如样式、脚本、图片等。 Memory Cache 的读取速度非常快,但缓存的持续性很短,一旦关闭 Tab 页面,内存中的缓存也就被释放了。在决定...
Cache Killer 是一个针对Chrome的缓存清理插件,它的特点是不用您专门清理,只要按下刷新按钮即可自动清理chrome缓存,非常的方便
2. 使用 jQuery Ajax 清除浏览器缓存:可以使用 $.ajax() 方法并设置 cache:false,或者使用 If-Modified-Since 和 Cache-Control 请求头来清除浏览器缓存。 3. 使用随机数或随机时间来避免缓存:可以在 URL 参数后...
4. **浏览器缓存策略**:虽然设置了`noCache`,但浏览器可能有自己的缓存策略。有时,需要清空浏览器缓存或禁用开发者工具中的预加载功能,以确保观察到正确的行为。 5. **框架或库的限制**:vue-admin-elementui...
赠送jar包:cache-api-1.1.1.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
`:设置`Cache-Control`头部,指示浏览器不要缓存此页面,并且在下次请求之前必须重新验证。 - `response.setHeader("Pragma", "no-cache");`:这是一个HTTP 1.0规范中的头部,用于告知浏览器不要缓存页面。 ##### ...
Cache Killer(chrome刷新自动清除缓存插件)是一款每当页面刷新就会自动清除缓存数据的chrome插件,Cache Killer适用于以chrome为内核的所有浏览器,该插件能在你加载页面之前自动清除浏览器缓存,而不需要在浏览器...
- **按 Enter 键**: 此时浏览器默认检查`Expires` 或 `Cache-Control` 字段,如果没有过期,则直接使用缓存数据。 - **按 F5 或刷新按钮**: 强制浏览器忽略本地缓存,并通过`max-age=0`字段向服务器验证资源是否被...
标签中的“浏览器插件”表明这是关于浏览器增强功能的话题,“cache-killer”是插件的名称,而“缓存清理”是其主要功能。这些标签有助于用户在搜索相关主题时找到这个插件。 在提供的压缩包子文件“cache-killer-...
### 浏览器缓存目录设置 在日常的网络浏览过程中,浏览器缓存的作用非常重要,它不仅能够提高网页加载速度,还能有效减少硬盘碎片的产生,进而提升整体系统的运行效率。本文将详细介绍如何针对不同浏览器(如Fire...
11. 终端和浏览器界面(Terminal and Browser Interface):Cache数据库支持通过命令行终端和Web浏览器界面进行管理,体现了其灵活性和易用性。 12. 远程系统访问(Remote System Access):Cache数据库支持通过网络...
8. cache文件夹:存储了浏览器的缓存数据,提高页面加载速度。 总的来说,"易语言谷歌核心浏览器"结合了易语言的易用性和谷歌浏览器的高性能,为开发者提供了一个独特的开发和浏览平台。用户可以通过这个插件轻松...
### JavaScript 获取浏览器临时目录知识点详解 #### 一、概述 在Web开发中,有时需要获取浏览器的临时目录以便进行文件操作或数据缓存等任务。然而,由于浏览器安全策略的限制,JavaScript直接获取本地文件系统...
例如,可以设置`web_cache_control("cache", "on")`来开启缓存,并通过`web_cache_control("refresh", "interval")`来设置缓存刷新间隔。 3. **模拟浏览器行为**:不同的浏览器对缓存的处理方式有所不同。...
Cache是一种在服务器上分配的公共内存区域,可供所有客户端浏览器通过后台代码访问。它面向所有用户,占用服务器资源,并且存在时间限制。一旦超过预设的过期时间,服务器会自动回收Cache。在.NET环境下,可以使用`...
简介: 开发过程中遇到一个问题,不同的浏览器对HTML的缓存的内容不一样,导致客户端按...Google,Baidu以后,找到这份最完整的关于Cache的介绍文档,对开发和解决问题有很大帮助.文档的内容是英文的.
npm-cache 文件是Node.js开发中一个非常重要的组件,它与npm(Node Package Manager)紧密相关。npm是Node.js的包管理器,用于安装、管理和共享依赖包,使得开发者能够便捷地在项目中引用和更新外部模块。npm-cache...
- **UserData** 和 **CacheData**:这两个文件夹可能分别存储用户的浏览数据(如书签、历史记录)和网页缓存,提高浏览速度。 - **CEFLib**:这个目录很可能包含了CEF库的相关动态链接库(DLL)和其他必要文件,是...
Chrome Cache View是一款专门用于查看和分析Chrome浏览器缓存的工具,它可以帮助用户提取并理解这些缓存记录。 在Chrome浏览器中,缓存主要分为两种类型:磁盘缓存和内存缓存。磁盘缓存存储在用户的本地文件系统中...