2010-05-04 16 views
6

¿Existe un método confiable para ver el tamaño del viewstate en una devolución de datos determinada?ASP.NET - Viewstate Size

+1

¿Desea verlo en el servidor o en la página del cliente? –

+0

Sin preferencias: solo quiero saber la cantidad de basura extra que se pasa de ida y vuelta. –

Respuesta

7
  1. Habilite el seguimiento en la web.config.
  2. Examine la aplicación http: ////Trace.axd
  3. En la sección "Árbol de control", resuma el tamaño del estado de la vista y el estado del control Tamaño de los controles.
11

Recomendaría usar el complemento de FireFox llamado "Tamaño de estado de vista". Rápido, simple y conveniente.

alt text

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

+0

Esto es realmente útil. El único inconveniente es que actualmente no es compatible con Firefox 4 ni con llamadas Ajax (dentro de UpdatePanels) –

+0

Funciona en Firefox 21. Sin embargo, no han probado AJAX. –

1

Usted tiene algunas opciones:

  • Usando el trazo
  • El uso de un navegador plug-in
  • Adición de código a su proyecto para extraer el tamaño de estado de vista

He encontrado este artículo muy útil "Determining an ASP.NET Page's View State Footprint" y cubre las opciones mencionadas anteriormente.

Sin embargo, lo que terminé haciendo cuando necesitaba ver el tamaño de viewview, etc. de una aplicación en la que me puse a trabajar, fue usar una herramienta llamada "ASP.NET ViewState Helper". Lo que me gustó de esa herramienta fue que podía ejecutarla como un archivo ejecutable independiente, sin necesidad de instalar complementos ni cambiar el código requerido.

El inconveniente es que solo funciona para IE pero en mi caso estuvo bien.

3

El rastro puede ser excesivo a veces. Puede agregar este javascript a la página para ver rápidamente cómo ViewState crece a medida que hace clic.

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

He puesto esto en un pequeño script de TamperMonkey para vigilarlo, podría ser útil para otros (aunque no sea una respuesta completa en sí misma): http://uber-rob.co.uk/2016/05/monitoring-viewstate-size/ –

+0

Uso la misma técnica jQuery anterior, pero en lugar de codificar en una alerta, utilizo la línea de comandos de la consola de herramientas F12 y simplemente escribo: '$ (entrada [id = __ VIEWSTATE ] [type = hidden] "). val(). length; ' y presiona enter. Es un poco más ad-hoc que codificar en una alerta, especialmente si no tiene fácil acceso al html fuente. –

Cuestiones relacionadas