Deaktivieren des ASP-Sitzungsstatus in ASP.NET

In diesem Artikel wird veranschaulicht, wie Sie den Sitzungsstatus in ASP.NET deaktivieren.

Ursprüngliche Produktversion:   ASP.NET
Ursprüngliche KB-Nummer:   306996

Zusammenfassung

Wenn der Sitzungsstatus aktiviert ist, erstellt ASP.NET eine Sitzung für jeden Benutzer, der auf die Anwendung zugreift, die verwendet wird, um den Benutzer seitenübergreifend innerhalb der Anwendung zu identifizieren. Wenn der Sitzungsstatus deaktiviert ist, werden Die Benutzerdaten nicht nachverfolgt, und Sie können keine Informationen im Objekt speichern Session oder die Oder Ereignisse Session_OnStart Session_OnEnd verwenden. Durch Deaktivieren des Sitzungsstatus können Sie die Leistung erhöhen, wenn die Anwendung oder die Seite keinen Sitzungsstatus benötigt, um sie zu aktivieren.

Wenn Sie in ASP.NET das Objekt nicht zum Speichern von Daten verwenden Session oder wenn eines der Ereignisse ( oder ) behandelt wird, ist der Session Session_OnStart Session_OnEnd Sitzungsstatus deaktiviert. Jedes Session.SessionID Mal, wenn eine einzelne Seite in einer Browsersitzung aktualisiert wird, wird eine neue erstellt.

Deaktivieren des Sitzungsstatus auf Anwendungsebene

Die folgenden Schritte zeigen, wie Sie den Sitzungsstatus auf Anwendungsebene deaktivieren, was sich auf alle Seiten in der Anwendung auswirkt:

  1. Starten Sie Microsoft Visual Studio .NET, und erstellen Sie eine neue ASP.NET Webanwendung.
  2. Doppelklicken Sie im Projektmappen-Explorer auf Web.config, um den Inhalt dieser Datei anzuzeigen.
  3. Suchen Sie den <sessionState> Abschnitt, und legen Sie den Moduswert auf "Aus" fest.
  4. Speichern Sie die Datei und/oder das Projekt, um den Sitzungsstatus auf allen Seiten der Anwendung zu deaktivieren.

Deaktivieren des Sitzungsstatus auf Seitenebene

Die folgenden Schritte zeigen, wie Sie den Sitzungsstatus auf Seitenebene deaktivieren, was sich nur auf die spezifischen Seiten auswirkt, die diese Änderungen aktivieren:

  1. Starten Sie Visual Studio .NET, und erstellen Sie eine neue ASP.NET Webanwendung.

  2. Doppelklicken Sie im Projektmappen-Explorer auf das Webformular, für das Sie den Sitzungsstatus deaktivieren möchten.

  3. Wählen Sie die REGISTERKARTE "HTML" aus.

  4. Fügen Sie oben auf der Seite EnableSessionState="false" die @Page-Direktive hinzu. Das geänderte Attribut sollte ähnlich wie folgt aussehen:

    <%@ Page language="c#" Codebehind="WebForm1.aspx.cs"
    AutoEventWireup="false" Inherits="WebApplication1.WebForm1"
    EnableSessionState="false" %>
    
  5. Speichern Sie die Datei und/oder das Projekt, um den Sitzungsstatus auf allen Seiten der Anwendung zu deaktivieren.

Problembehandlung

Wenn Sie versuchen, Informationen festzulegen oder abzurufen, wenn der Sitzungsstatus deaktiviert ist, wird die folgende Fehlermeldung angezeigt:

Der Sitzungsstatus kann nur verwendet werden, wenn enableSessionState auf "true" festgelegt ist, entweder in einer Konfigurationsdatei oder in der Page-Direktive.

References