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.SessionID
Viene 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:
- Avviare Microsoft Visual Studio .NET e creare una nuova applicazione Web di ASP.NET.
- In Esplora soluzionifare doppio clic su Web.config per visualizzare il contenuto del file.
- Individuare la
<sessionState>
sezione e impostare il valore della modalità su disattivato. - 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:
Avviare Visual Studio .NET e creare una nuova applicazione Web di ASP.NET.
In Esplora soluzionifare doppio clic sul modulo Web per il quale si desidera disabilitare lo stato della sessione.
Selezionare la scheda HTML .
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" %>
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.