Aparte de porque el almacenamiento de la sesión es sesión-global para más de una página, ¿por qué alguna vez querría usar viewstate para mantener los valores?¿Por qué alguna vez usaría el objeto de almacenamiento ViewState de asp.net sobre el objeto de almacenamiento de sesión?
Parece un poco ridículo enviar cualquier clase de información que no sea una pequeña cadena de consulta como valores, hacia adelante y hacia atrás desde el cliente al servidor. Me refiero a qué desperdicio de ancho de banda (!), Simplemente con fines de almacenamiento. La sesión, si bien es global en varias páginas, parece una alternativa completamente superior a viewstate.
Especialmente con los controles y las variantes de asp.net ajax, el viewstate podría hincharse rápidamente al rastrear los distintos estados y variables de todos esos controles y elementos html.
Pero entonces ¿por qué hay almacenamiento de viewstate para variables de página y objetos en absoluto?
Tal vez me está faltando otro gran uso para el almacenamiento viewstate de la página, ¿alguien sabe algo por ahí?
¡Gracias por leer!
EDIT: Todo el mundo tenía una gran respuesta, lo siento si no elegí la tuya.
Además, las sesiones son básicamente pares clave-valor: si su usuario abre varias pestañas y está almacenando una ID en sesión, tendrá problemas. – chris