Pregunta

Tengo una página en la que quiero mantener el valor del objeto entre las devoluciones de publicaciones. Estoy pensando en dos formas de mantener el valor de los objetos

  
      
  1. Almacene el valor en estado de visualización
  2.   
  3. Almacena el valor en el campo oculto
  4.   

cuál es la mejor opción para usar según el rendimiento

¿Fue útil?

Solución

Viewstate si don't necesita hacer referencia en el script del lado del cliente. Un campo oculto si lo haces.

También tenga en cuenta que si los datos son confidenciales, Viewstate se cifra de forma predeterminada, mientras que el campo oculto, de forma predeterminada, los almacena como texto sin formato visible para cualquier persona que sepa cómo ver la fuente.

Editar

Por la nota de @Andrew Hare en su propia respuesta, estoy editando esto. Es una distinción lo suficientemente importante como para notar. Odiaría que alguien piense que son " seguras " usando el estado de visualización basado en mi supervisión.

El Viewstate NO está cifrado de forma predeterminada, se almacena como codificación Base-64. Se puede descodificar con bastante facilidad, por lo que no es válido utilizar Viewstate porque está cifrado de forma predeterminada. Es mejor que el texto simple, pero no para cualquiera que tenga la capacidad de descifrar Viewstate " o " decodificar Viewstate " ;.

No confíe en Viewstate para proteger su información oculta en el código del lado del cliente.

Un artículo aquí le indica cómo cifrarlo correctamente. (pero también advierte sobre problemas de rendimiento).

Otros consejos

Realmente no importa, ya que ViewState se almacena en una entrada oculta. Usa el que sea más fácil para ti. Si dependiera de mí, elegiría ViewState ya que el tiempo de ejecución de ASP.NET manejará la serialización y deserialización de sus objetos por usted.

Me gusta ViewState, es mucho más difícil de piratear: una persona desagradable podría enviarte fácilmente tu página con datos erróneos en tus campos ocultos

Quieres almacenarlo en el estado de vista. Los campos ocultos pueden actualizarse en el navegador, ya que están destinados a almacenar información que puede manipularse en el lado del cliente. El estado de la vista será validado por asp.net contra la manipulación, donde tendrá que hacerlo usted mismo con el campo oculto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top