Es ist bekannt, dass das Web zustandslos ist, was bedeutet, dass jedes Mal, wenn eine bestimmte Webseite angefordert wird. Es wird jedes Mal neu erstellt und an den Server gesendet. Außerdem ist HTTP ein zustandsloses Protokoll, dh es kann keine Client-Informationen auf der Webseite enthalten. Es muss also den Zustand einer Seite und der Serverseite beibehalten, die Zustandsverwaltung wird durchgeführt. ViewState und SessionState werden jeweils für die clientseitige Zustandsverwaltung und die serverseitige Zustandsverwaltung verwendet. Der grundlegende Unterschied zwischen diesen beiden besteht darin, dass der ViewState den Status auf der Clientseite verwalten soll, was die Statusverwaltung für den Endbenutzer vereinfacht, während SessionState den Status auf der Serverseite verwaltet, wodurch es auch von diesem Ende aus einfach ist, Inhalte zu verwalten.

ViewState: Es wird nur auf einer Ebene verwaltet, nämlich auf Seitenebene. Änderungen, die auf einer einzelnen Seite vorgenommen werden, sind auf anderen Seiten nicht sichtbar. Informationen, die im Ansichtszustand gesammelt werden, werden nur für die Clients gespeichert und können nicht an einen anderen Ort übertragen werden. Der Anzeigestatus ist nur synonym mit serialisierbaren Daten.

ViewState hat eine Tendenz zur Persistenz von seiteninstanzspezifischen Daten. Wenn der Ansichtsstatus verwendet wird, bleiben die von einer bestimmten Seite geposteten Werte im Suchbereich, den der Client verwendet, und werden erst zurückgesendet, wenn der gesamte Vorgang abgeschlossen ist. Die Daten der vorherigen Seite sind nicht mehr verfügbar, wenn eine andere Seite geladen wird. Außerdem sind die Daten in diesem Fall nicht sicher, da sie Clients offengelegt werden. Zur Datensicherheit kann eine Verschlüsselung eingesetzt werden.

SessionState: Es wird auf Sitzungsebene verwaltet und auf Daten kann über alle Seiten in der Webanwendung zugegriffen werden. Die Informationen werden auf dem Server gespeichert und können von jeder Person abgerufen werden, die Zugriff auf den Server hat, auf dem die Informationen gespeichert sind.

SessionState hat die Tendenz zur Persistenz von benutzerspezifischen Daten und wird serverseitig gepflegt. Diese Daten bleiben bis zum Ende der Sitzung oder bis zum Schließen des Browsers durch den Nutzer verfügbar. Der Sitzungsstatus ist nur für Typobjekte gültig.

Unterschiede zwischen ViewState und SessionState:

SichtzustandSitzungsstatus
Wird nur auf Seitenebene gepflegt.Auf Sitzungsebene gepflegt.
Der Ansichtsstatus kann nur von einer einzelnen Seite und nicht von mehreren Seiten aus sichtbar sein.Die Verfügbarkeit des Sitzungsstatuswerts gilt für alle Seiten, die in einer Benutzersitzung verfügbar sind.
Es behält die Werte im Falle eines Postback-Vorgangs bei.Im Sitzungszustand verbleiben Benutzerdaten auf dem Server. Die Daten stehen dem Benutzer zur Verfügung, bis der Browser geschlossen wird oder die Sitzung abgelaufen ist.
Informationen werden nur auf der Seite des Clients gespeichert.Informationen werden auf dem Server gespeichert.
Wird verwendet, um die Persistenz von seiteninstanzspezifischen Daten zu ermöglichen.dient der serverseitigen Persistenz benutzerspezifischer Daten.
ViewState-Werte gehen verloren/gelöscht, wenn eine neue Seite geladen wird.SessionState kann vom Programmierer oder Benutzer oder bei Zeitüberschreitungen gelöscht werden.

Verwendung:

  • SessionState: Es kann verwendet werden, um Informationen zu speichern, auf die Sie auf verschiedenen Webseiten zugreifen möchten.
  • ViewState Es kann verwendet werden, um Informationen zu speichern, auf die Sie von derselben Webseite zugreifen möchten.