Freigeben über


ASP.NET-Sitzungszustand

Mit dem ASP.NET-Sitzungszustand können Sie Werte für einen Benutzer speichern und abrufen, während dieser die verschiedenen ASP.NET-Seiten einer Webanwendung navigiert. HTTP ist ein statusfreies Protokoll, d. h. der Webserver behandelt jede einzelne Seitenanforderung als unabhängige Anforderung. Standardmäßig besitzt der Server keinerlei Kenntnis über Variablenwerte aus früheren Anforderungen. Daher kann der Aufbau von Webanwendungen, die anforderungsübergreifende Zustandsinformationen (Anwendungen mit Einkaufswagen, Datenbildlauf usw.) verwalten müssen, zu einer wirklichen Herausforderung werden. Der ASP.NET-Sitzungszustand erkennt Anforderungen von demselben Browser in einem bestimmten Zeitraum als eine Sitzung und kann Variablenwerte während der gesamten Sitzung beibehalten.

Der ASP.NET-Sitzungszustand ist für alle ASP.NET-Anwendungen standardmäßig aktiviert. ASP.NET-Sitzungszustandsvariablen können mit der Session-Eigenschaft, die Sitzungsvariablenwerte als namensindizierte Auflistung speichert, leicht festgelegt und abgerufen werden. Das folgende Codebeispiel etwa erstellt die Sitzungsvariablen FirstName und LastName, die den Vornamen und den Nachnamen eines Benutzers darstellen, und legt sie auf Werte aus den TextBox-Steuerelementen fest.

Session("FirstName") = FirstNameTextBox.Text
Session("LastName") = LastNameTextBox.Text
Session["FirstName"] = FirstNameTextBox.Text;
Session["LastName"] = LastNameTextBox.Text;

ASP.NET speichert Sitzungsinformationen standardmäßig im Speicher der ASP.NET-Anwendung. Wahlweise können Sitzungsinformationen mit einem eigenständigen Dienst gespeichert werden, sodass bei einem Neustart der ASP.NET-Anwendung Sitzungsinformationen erhalten bleiben, oder in einem SQL Server, damit Sitzungsinformationen beliebig vielen Webservern in einer Webfarm zur Verfügung stehen (und zudem bei einem Neustart der ASP.NET-Anwendung erhalten bleiben) oder in einem benutzerdefinierten Datenspeicher. Weitere Informationen finden Sie unter Sitzungszustandsmodi.

Außer dem Sitzungszustand bietet ASP.NET auch einige andere Optionen für den Erhalt von Daten innerhalb einer Anwendung. Einen Vergleich finden Sie unter Empfehlungen zur ASP.NET-Zustandsverwaltung.

In diesem Abschnitt

Referenz

  • System.Web.SessionState
    Stellt Klassen und Schnittstellen bereit, die das Speichern von Anwendungsdaten im Sitzungszustand aktivieren.

  • Session
    Ermöglicht der aktuellen HTTP-Anforderung Zugriff auf die Sitzung.

Verwandte Abschnitte