求助:关于ASP.NET中用系统时间验证整页缓存效果的一个问题
刚开始学ASP.NET的缓存技术,在做整页缓存的一个简单应用时碰到一个问题:在IE中运行后,单击页面内的“刷新”按钮时,第一次可以显示时间,然后在5秒内如果再次单击“刷新”按钮则浏览器提示无法显示该网页,而5秒之外再次单击一次则可以正常显示,之后再次在5秒内单击又无法显示,可是在北大青鸟的教材书上说的是可以一直不停的单击“刷新”按钮进而观察缓存效果。这个问题在火狐浏览器中不存在,可以不停的单击“刷新”按钮,每5秒更新一次时间。
请问在IE中为啥存在这个问题?
前台代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="WholePageCache.aspx.cs" Inherits="MyCacheExample_WholePageCache" %>
<%@ OutputCache Duration="5" VaryByParam="none" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
当前系统时间:<asp:Label ID="lblTime" runat="server"></asp:Label><br /><br />
<asp:Button ID="btnRefresh" runat="server" Text="刷新" onclick="btnRefresh_Click" />
</div>
</form>
</body>
</html>
后台代码:
public partial class MyCacheExample_WholePageCache : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnRefresh_Click(object sender, EventArgs e)
{
this.lblTime.Text = DateTime.Now.ToString();
}
}
--------------------编程问答-------------------- 我觉得用这个办法显示时钟不好,可以用一个js定时器,在html里面自动运行就可以了
<script type="text/javascript">
function donghai() {
parent.main.location.reload();
}
setInterval("donghai()",30000)
</script> --------------------编程问答-------------------- js的方法我会,但我现在在学ASP.NET的缓存技术啊,想验证下整页缓存的效果。
不过还是谢谢你了啊! --------------------编程问答-------------------- 这个问题我也遇到了,谁给解释一下 --------------------编程问答-------------------- 设置一下缓存位置 Location="Downstream" 或者"client"
补充:.NET技术 , ASP.NET