Deaktivieren des ASP-Sitzungszustands in ASP.NET
In diesem Artikel wird veranschaulicht, wie Sie den Sitzungszustand in ASP.NET deaktivieren.
Originale Produktversion: ASP.NET
Ursprüngliche KB-Nummer: 306996
Zusammenfassung
Wenn der Sitzungszustand aktiviert ist, erstellt ASP.NET für jeden Benutzer, der auf die Anwendung zugreift, eine Sitzung, die verwendet wird, um den Benutzer seitenübergreifend innerhalb der Anwendung zu identifizieren. Wenn der Sitzungszustand deaktiviert ist, werden Benutzerdaten nicht nachverfolgt, und Sie können keine Informationen im Session
Objekt speichern oder die Session_OnStart
Ereignisse oder Session_OnEnd
verwenden. Durch Deaktivieren des Sitzungszustands können Sie die Leistung erhöhen, wenn die Anwendung oder die Seite keinen Sitzungszustand benötigt, um ihn zu aktivieren.
Wenn Sie in ASP.NET das Session
-Objekt nicht zum Speichern von Daten verwenden oder wenn eines der Ereignisse (Session_OnStart
oder Session_OnEnd
) behandelt wird, ist der Session
Sitzungszustand deaktiviert. Jedes Mal, wenn eine einzelne Seite in einer Browsersitzung aktualisiert wird, wird ein neues Session.SessionID
erstellt.
Deaktivieren des Sitzungszustands auf Anwendungsebene
Die folgenden Schritte veranschaulichen, wie der Sitzungszustand auf Anwendungsebene deaktiviert wird, was sich auf alle Seiten in der Anwendung auswirkt:
- Starten Sie Microsoft Visual Studio .NET, und erstellen Sie eine neue ASP.NET-Webanwendung.
- Doppelklicken Sie Projektmappen-Explorer auf Web.config, um den Inhalt dieser Datei anzuzeigen.
- Suchen Sie den
<sessionState>
Abschnitt, und legen Sie den Moduswert auf Aus fest. - Speichern Sie die Datei und/oder das Projekt, um den Sitzungszustand auf allen Seiten in der Anwendung zu deaktivieren.
Deaktivieren des Sitzungszustands auf Seitenebene
Die folgenden Schritte veranschaulichen, wie der Sitzungszustand auf Seitenebene deaktiviert wird, was sich nur auf die spezifischen Seiten auswirkt, die diese Änderungen ermöglichen:
Starten Sie Visual Studio .NET, und erstellen Sie eine neue ASP.NET-Webanwendung.
Doppelklicken Sie Projektmappen-Explorer auf das Webformular, für das Sie den Sitzungszustand deaktivieren möchten.
Wählen Sie die Registerkarte HTML aus.
Fügen Sie oben auf der Seite die @Page-Direktive hinzu
EnableSessionState="false"
. Das geänderte Attribut sollte in etwa wie folgt aussehen:<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="WebApplication1.WebForm1" EnableSessionState="false" %>
Speichern Sie die Datei und/oder das Projekt, um den Sitzungszustand auf allen Seiten in der Anwendung zu deaktivieren.
Problembehandlung
Wenn Sie versuchen, Informationen festzulegen oder abzurufen, wenn der Sitzungszustand deaktiviert ist, erhalten Sie die folgende Fehlermeldung:
Der Sitzungszustand kann nur verwendet werden, wenn enableSessionState auf true festgelegt ist, entweder in einer Konfigurationsdatei oder in der Page-Direktive.
References
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für