Hat In dem ASP .NET-Label, das Gewicht des Viewstate auf Lokalisierung geben wird?
Frage
Zur Zeit arbeite ich an einem Lokalisierungsprojekt für eine ASP .NET-Anwendung. Ich habe derzeit eine massive Seite mit einer Multi-Ansicht mit etwa 9 Registerkarten mit dem einzelnen Registerkarten viele Daten enthalten. Ich habe mich nur gefragt, habe ich eine Menge von Tag auf meine ASPX-Seite, so dass ich meinen Text leicht lokalisieren konnte. Ich frage mich, ob die Menge von Label einen großen Einfluss auf die Ansichtszustand Größe hat? Oder die Performance der Seite.
las ich auf einem anderen Text ( hier ), dass eine einzige asp: Etikett am Minimum enthält 52bytes von Daten. Also, wenn ich eine Menge Label steuert es zusätzlich nicht genutzte Daten hin und her geschickt werden würde. Ich frage mich, warum es sogar 52 Byte Ansichtszustand benötigen, wenn es nur ein Etikett ist. Auch gibt es einen anderen Ansatz Lokalisierung in ASP .NET andere als die eingebauten Funktion von Microsoft zu tun.
Lösung
Die <asp:Label>
Text
Eigenschaft wird nicht in ViewState
beibehalten werden, wenn nicht zwischen Postbacks ändern. Die ViewState
, die Sie für eine <asp:Label>
Steuerung erzeugt sehen, sind die Daten, die durch die Beschriftung der Control erzeugt werden, wenn SaveViewState()
auf der Control aufgerufen wird.
Lassen Sie mich klarstellen - ViewState
verfolgt Änderungen an der Seite. Wenn der Text des <asp:Label>
wird in der aspx Markup (oder Code-Behind) gesetzt und sich nie ändert, dann ist die Größe des Viewstate nicht (die ViewState
Steuerung für das Etikett keine Daten enthalten, um die Text
Vermögen,) ändern . In dieser Situation würde ich geneigt sein EnableViewState
so einzustellen, false
, dass keine Daten in Viewstate für das Label überhaupt gestellt werden.
Ich würde empfehlen, lesen wirklich zu verstehen Viewstate für weitere Details.