Ist es möglich, ViewState in ASP .NET zu deaktivieren?
-
28-10-2019 - |
Frage
Ich verwende serverseitige Steuerelemente von Drittanbietern auf meiner Website (Telerik RadControls für ASP .NET).Das Menüsteuerelement hat eine komplexe Struktur, die die Größe des Ansichtsstatus aufbläht und die Ladezeiten beeinflusst.Mir sind die Details von viewstate nicht bekannt, außer dass es vom Webserver verwendet wird, um die Kontrollwerte zu verfolgen.
Da die meisten Seiten meiner Website nur angezeigt werden, ist es möglich, den Ansichtsstatus zu deaktivieren, in dem keine Benutzereingaben vorgenommen werden?Alle dynamischen Elemente werden in jedem Fall beim Laden der Seite neu generiert.
Lösung
Wenn Sie asp.net 4 verwenden, können Sie die ViewStateMode
-Eigenschaft verwenden, um die Ansichtsstatusgenerierung für Steuerelemente zu steuern. ViewStateMode
http://msdn.microsoft.com / de-de / library / system.web.ui.page.enableviewstate.aspx
Andere Tipps
Fügen Sie oben auf Ihrer Aspx-Seite den Parameter enableViewstate="false" auf den Seiten hinzu, die ihn nicht benötigen.Der Ansichtsstatus wird zwar nicht vollständig deaktiviert, die Größe jedoch erheblich reduziert.
Ich habe dies nicht getestet, aber ich denke, es ist möglich.
Fügen Sie in Ihrer Web.config-Datei stattdessen das Attribut zum Seiten-Tag hinzu, und fügen Sie dann auf den Seiten, auf denen es aktiviert sein soll, das Attribut mit true oben hinzu
System.Web.UI.WebControls.CheckBox checkBox = new System.Web.UI.WebControls.CheckBox();
checkBox.EnableViewState = false;
Es gibt verschiedene Möglichkeiten, ViewState zu deaktivieren.In Ihrem Fall würde ich empfehlen, den Ansichtsstatus auf dem Steuerelement zu deaktivieren:
<telerik:RadMenu ViewStateMode="Disabled"