Cache浏览器

原创 2004年06月27日 12:26:00

对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>

浏览器 http 200(from cache) 和 304

当我们想尽办法提高服务器负载能力的时候,是否曾想过,其实浏览器也有缓存功能,我们也可以利用浏览器的缓存功能来减少服务器的负载,提高网站吞吐量?本章我们就来讲讲浏览器的缓存功能并加以利用。  当我...
  • joeyon
  • joeyon
  • 2014年08月21日 14:18
  • 5014

Web开发须知的浏览器内幕 缓存与存储篇(1)

本文禁止转载,由UC浏览器内部出品。0.前言大纲浏览器缓存和存储相关的功能分为四类: 加载流程 Memory Cache Application Cache(简称AppCache) HTTP Cac...
  • hursing
  • hursing
  • 2016年09月23日 11:02
  • 3612

各大浏览器清除缓存(cache)详细步骤

1. Firefox 1.1 xu
  • cs08211317dn
  • cs08211317dn
  • 2014年09月09日 10:06
  • 3134

浏览器缓存处理cache control

from: http://mangguo.org/browser-cache-mechanism-detailed/ 浏览器缓存 浏览器缓存的知识是前端工程师必须要掌握的,因为这些...
  • ly402609921
  • ly402609921
  • 2016年11月11日 12:17
  • 824

浏览器探究 - HTML5规范之Application Cache(1)

浏览器特性 网络:下载资源 资源管理:缓存资源,避免重复下载 网页浏览:将资源转换为可视化结果 多页面管理:多页面同时加载 插件和扩展:常见插件:NPAPI、PPAPI、ActiveX。扩展根据浏...
  • zhxdick
  • zhxdick
  • 2016年10月07日 11:04
  • 1528

Cache浏览器

Cache浏览器作者:孟宪会 出自:【孟宪会之精彩世界】 发布日期:2004年6月2日 9点38分8秒 对Cache进行浏览并管理。//http://aspalliance.com/aldotnet/...
  • littlehb
  • littlehb
  • 2004年10月28日 09:02
  • 840

Cache浏览器

对Cache进行浏览并管理。例子 //http://aspalliance.com/aldotnet/examples/cacheviewer.aspx//http://scottwater.co...
  • hejishan
  • hejishan
  • 2008年03月11日 12:07
  • 166

Cache浏览器

对Cache进行浏览并管理。例子 //http://aspalliance.com/aldotnet/examples/cacheviewer.aspx//http://scottwater.comp...
  • dcboy
  • dcboy
  • 2004年07月02日 12:13
  • 682

chrome浏览器ctrl+f5强刷仍然显示from cache的实现

from cache $(window).load(function() { var bg='http://img.infinitynewtab.com/wallpaper/100.jpg'...
  • wzx19840423
  • wzx19840423
  • 2016年05月17日 11:31
  • 2878

WebKit中的MemoryCache

WebKit将资源分为main resouce和sub resource,并提供了相应的cache机制,来提高用户体验。 main resource的cache为pagecache,主要缓存dom和...
  • yangxi_001
  • yangxi_001
  • 2012年07月08日 20:45
  • 661
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Cache浏览器
举报原因:
原因补充:

(最多只允许输入30个字)