Ich hatte eine Masterpage, die als Sidebar für die Navigation verwendet. Ich erstellte ein Benutzersteuerelement für diese Sidebar, da jeder Benutzer ihre eigene Reihe von Navigationsmenüs haben.Fragment Cache ein Benutzersteuerelement in asp.net Webformular Masterpage
In meinem UserMenu verwende ich Infragistic webexplorer und Iam erstellt jedes Element von webexplorer mit ado.net Ergebnis aus der Datenbank dynamisch.
Alles funktioniert gut. In hoher Bandbreite, aber in geringer Bandbreite dauert es 3-4 Sekunden für die Menüleiste zu laden. Benutzer auf so viel warten auf jeden Postback.
Also habe ich versucht Fragment Caching .but ich Sie mir scheint nicht working.can vorschlagen, was falsch
In MasterpaDE ich
tat<div>
//this is my usercontrol
<uc1:DynamicMenuBar runat="server" id="DynamicMenuBar" />
</div>
<div id="main" class="content" >
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
<div class="bodybackground">
</div>
</asp:ContentPlaceHolder>
</div>
In meinem Usercontrol
.ascx<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="DynamicMenuBar.ascx.cs" Inherits="ArtWebApp.DynamicMenuBar" %>
<%@ Register assembly="Infragistics35.Web.v12.1, Version=12.1.20121.2236, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb" namespace="Infragistics.Web.UI.NavigationControls" tagprefix="ig" %>
<%@ OutputCache Duration="600" VaryByParam="none" %>
<ig:WebExplorerBar ID="WebExplorerBar1" runat="server" Width="250px">
</ig:WebExplorerBar>
Und In meinem usercontrol .ascx.cs hatte ich die folgende
public partial class DynamicMenuBar : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
loadexplorerebar(); //this function creates the groups and childs based on the database result dynamically
this.WebExplorerBar1.EnableViewState = true;
}
}
getan