我的ASP.NET(Framework 4)Web项目中的导航存在问题.我在主页面上有一个登录字段.主页还包含一个ContentPlaceHolder,它动态地包含其他aspx页面.我从页面"a"开始并导航到页面"b".当我登录页面"b"时,导航中的其他节点变得可见.现在我的问题:当我从浏览器推送"历史回复"按钮时,附加节点在页面"a"上消失.
我发现页面"a"不会再次重新加载,因为它是从浏览器的缓存中加载的.
我尝试使用LinkButton(Zurueck):
protected void Page_Load(object sender, EventArgs e)
{
Zurueck.Attributes.Add("onClick", "javascript:history.back(); return false;");
}
Run Code Online (Sandbox Code Playgroud)
我还在C#源代码和aspx源代码中尝试了一些缓存限制:
protected void Page_Load(object sender, EventArgs e)
{
Response.Cache.SetCacheability(HttpCacheability.NoCache);
if (Session["sessionKuerzel"] != null)
{
view = (TreeView)this.FindControl("TreeViewVerwaltung");
view.Visible = true;
login = (Button)this.FindControl("Senden");
login.Visible = false;
logout = (Button)this.FindControl("Logout");
logout.Visible = true;
benutzerrecht = (string)(Session["sessionRecht"]);
if (benutzerrecht.Equals("Administrator")){
view.Nodes[0].ChildNodes[1].SelectAction = TreeNodeSelectAction.Select;
}
else{
view.Nodes[0].ChildNodes[1].SelectAction = TreeNodeSelectAction.None;
}
view.Visible = true;
}
}
Run Code Online (Sandbox Code Playgroud)
Site.Master.aspx(负责人):
<meta http-equiv="cache-control" content="no-cache"/>
<meta http-equiv="expires" content="0"/>
Run Code Online (Sandbox Code Playgroud)
但所有这些替代方案都不适用于Mozilla FireFox.
如何在历史记录中导航并重新加载页面?任何想法或解决方案?