



























可以缓存页面的一个文件或一组文件,设置依赖,但文件被改时,缓存失效
aspx在头的地方写
<%@ OutputCache VaryByParam="none" Duration="9999" %>
可以在此调用时间方便知道是否缓存
<%=DateTime.Now.ToString("T")%>
protected void Page_Load(object sender, EventArgs e)
{
Response.AddFileDependency(MapPath("luca.xml"));
}
用Gridview绑定XML
如果修改此XML缓存失效
另一种编程设置缓存失效
如有个页面是显示jobs数据的页面设置了缓存,当我在另一个页面做添加数据时,我就要把显示jobs的数据缓存去掉
添加一个页面
在addjobs页面
当在做完添加操作后写如下代码
string sql = "insert into jobs values('luca',30,50)";
SqlCommand cmd = new SqlCommand(sql,con);
con.Open();
cmd.ExecuteNonQuery();
con.Close(); HttpResponse.RemoveOutputCacheItem(Page.ResolveUrl("~/jobs.aspx"));
Response.Redirect("~/jobs.aspx");
}
就可以还一种情况
如果有多个页面都调用jobs数据并且都缓存了
上面的 HttpResponse.RemoveOutputCacheItem一次只能去除一个页面 我们就要用到Cache
在jobs.aspx中
protected void Page_Load(object sender, EventArgs e)
{
Cache.Insert("jobs", DateTime.Now);
Response.AddCacheItemDependency("jobs");
}
然后在addjobs中在添加操作后
Cache.Remove("jobs");
就ok了
如果另一个页面如jobsDetails.aspx
也缓存了jobs数据
也只要page_load中写
Response.AddCacheItemDependency("jobs");
也就同样会失去缓存
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。