2010-05-04 9 views
6

Gibt es eine zuverlässige Methode zum Anzeigen der Größe des Viewstate auf einem gegebenen Postback?ASP.NET - Viewstate Größe

+1

Sie möchten es auf dem Server oder auf der Seite auf dem Client anzeigen? –

+0

Keine Präferenz - Ich möchte nur wissen, wie viel zusätzlichen Müll hin und her weitergegeben wird. –

Antwort

7
  1. Aktivieren Sie Trace in der Datei web.config.
  2. Durchsuchen Sie die Anwendung http: ////Trace.axd
  3. In der "Control Tree" -Abschnitt, summieren Sie den ViewState Size und Control-Status Größe der Steuerelemente.
11

Ich würde empfehlen, FireFox-Addon namens "Viewstate Size" zu verwenden. Schnell, einfach und bequem.

alt text

https://addons.mozilla.org/en-US/firefox/addon/5956/

+0

Das ist wirklich nützlich. Einziger Nachteil ist, dass es derzeit weder mit Firefox 4 noch mit Ajax-Calls kompatibel ist (innerhalb von UpdatePanels) –

+0

Funktioniert in Firefox 21. Habe AJAX allerdings noch nicht getestet. –

1

Sie haben ein paar Optionen verwenden können:

  • Verwendung von Trace
  • einen Browser
  • Code zu einem Projekt-Plugin für das Hinzufügen fand die Ansichtszustand Größe Extrahieren

ich diesen Artikel sehr nützlich „Determining an ASP.NET Page's View State Footprint“ und deckt die oben genannten Optionen.

Aber was ich getan habe, als ich auf die Größe des Viewstates etc. einer Anwendung schauen musste, die ich zur Arbeit einbrachte, war ein Tool namens "". Was ich an diesem Tool mochte, war, dass ich es als eigenständige ausführbare Datei ausführen konnte, keine Installation von Plugins erforderlich und keine Änderung des Codes erforderlich.

Der Nachteil ist, dass es nur für IE funktioniert, aber in meinem Fall war das in Ordnung.

3

Trace könnte manchmal Overkill sein. Sie können dieses Javascript der Seite hinzufügen, um schnell zu sehen, wie der ViewState wächst, während Sie herumklicken.

<script type="text/javascript"> 
    alert('Viewstate is now ' + $('#__VIEWSTATE').val().length + ' bytes.'); 
</script> 
+0

Ich habe dies in ein kleines TamperMonkey-Skript geschrieben, um es im Auge zu behalten - könnte für andere hilfreich sein (obwohl es keine vollständige Antwort an sich ist): http://uber-rob.co.uk/2016/05/monitoring-viewstate-size/ –

+0

Ich benutze die gleiche jQuery-Methode oben, aber anstatt Code in einer Warnung, verwende ich die F12-Tools-Konsole Befehlszeile und einfach eingeben: '$ ("input [id = __ VIEWSTATE ] [type = hidden] "). val(). length; ' und drücke Enter. Es ist ein wenig ad-hoc als Codierung in einer Warnung, vor allem, wenn Sie nicht einfach Zugriff auf die Quell-HTML haben. –

Verwandte Themen