Disabilitare lo stato sessione ASP in ASP.NET

In questo articolo viene illustrato come disabilitare lo stato della sessione in ASP.NET.

Versione originale del prodotto:   ASP.NET
Numero KB originale:   306996

Riepilogo

Quando lo stato della sessione è abilitato, ASP.NET crea una sessione per ogni utente che accede all'applicazione, che viene utilizzata per identificare l'utente tra le pagine all'interno dell'applicazione. Quando lo stato della sessione è disabilitato, i dati utente non vengono registrati e non è possibile archiviare le informazioni nell' Session oggetto o utilizzare gli Session_OnStart Session_OnEnd eventi or. Disabilitando lo stato della sessione, è possibile migliorare le prestazioni se l'applicazione o la pagina non richiede lo stato della sessione per abilitarlo.

In ASP.NET, se non si utilizza l' Session oggetto per archiviare i dati o se uno degli Session eventi ( Session_OnStart o Session_OnEnd ) viene gestito, lo stato della sessione è disabilitato. Session.SessionIDViene creata una nuova pagina ogni volta che viene aggiornata una singola pagina in una sessione del browser.

Disabilitare lo stato sessione a livello di applicazione

Nei passaggi seguenti viene illustrato come disabilitare lo stato della sessione a livello di applicazione, che influisce su tutte le pagine dell'applicazione:

  1. Avviare Microsoft Visual Studio .NET e creare una nuova applicazione Web di ASP.NET.
  2. In Esplora soluzionifare doppio clic su Web.config per visualizzare il contenuto del file.
  3. Individuare la <sessionState> sezione e impostare il valore della modalità su disattivato.
  4. Salvare il file e/o il progetto per disabilitare lo stato della sessione in tutte le pagine dell'applicazione.

Disabilitare lo stato sessione a livello di pagina

Nella procedura seguente viene illustrato come disabilitare lo stato della sessione a livello di pagina, che influisce solo sulle pagine specifiche che consentono le modifiche seguenti:

  1. Avviare Visual Studio .NET e creare una nuova applicazione Web di ASP.NET.

  2. In Esplora soluzionifare doppio clic sul modulo Web per il quale si desidera disabilitare lo stato della sessione.

  3. Selezionare la scheda HTML .

  4. Nella parte superiore della pagina, aggiungere EnableSessionState="false" la direttiva @ Page. L'attributo modified dovrebbe essere simile al seguente:

    <%@ Page language="c#" Codebehind="WebForm1.aspx.cs"
    AutoEventWireup="false" Inherits="WebApplication1.WebForm1"
    EnableSessionState="false" %>
    
  5. Salvare il file e/o il progetto per disabilitare lo stato della sessione in tutte le pagine dell'applicazione.

Risoluzione dei problemi

Se si tenta di impostare o recuperare le informazioni quando lo stato della sessione è disabilitato, viene visualizzato il messaggio di errore seguente:

Lo stato della sessione può essere utilizzato solo quando enableSessionState è impostato su true, in un file di configurazione o nella direttiva Page.

Riferimenti