Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo consente di risolvere il problema che i dati della sessione vengono persi quando si usa ASP.NET modalità di stato della sessione InProc.
Versione originale del prodotto: ASP.NET
Numero KB originale: 324772
Sintomi
I dati della sessione per ASP.NET applicazioni Web sembrano andare persi a intervalli casuali per la modalità stato sessione InProc.
Causa
I dati sullo stato della sessione vengono persi se la AppDomain
classe o il processo di Aspnet_wp.exe (o il processo di W3wp.exe, per le applicazioni eseguite in IIS 7.0 o versione successiva) vengono riciclate. In genere, il AppDomain
viene riavviato in base a diversi fattori:
- Vari attributi, ad esempio l'attributo
memoryLimit
, hanno impostazioni specifiche nella<processModel>
sezione del file di configurazione. - Il file Global.asax o Web.config è stato modificato.
- La
Bin
directory dell'applicazione Web è stata modificata. - Il software di analisi dei virus ha toccato alcuni file con estensione config .
In Modalità sessione InProc indica che lo stato della sessione viene archiviato in locale. Ciò significa che con la modalità di stato della sessione InProc viene archiviato come oggetti di vita nell'applicazione AppDomain
Web. Questo è il motivo per cui lo stato della sessione viene perso quando Aspnet_wp.exe (o W3wp.exe, per le applicazioni eseguite in IIS) o i AppDomain
riavvii.
Risoluzione
Per risolvere questo problema, è possibile usare la modalità stato sessione StateServer o SqlServer. ASP.NET fornisce questi altri approcci per l'archiviazione dei dati sullo stato della sessione. Nelle modalità StateServer e SqlServer lo stato della sessione non viene archiviato nell'applicazione AppDomain
Web.
Note
È importante comprendere il comportamento e i problemi associati a ogni modalità di stato della sessione quando si decide quale modalità è appropriata per i requisiti.
Stato
Questo comportamento è impostato a livello di progettazione.
Riferimenti
Per altre informazioni sulla gestione dello stato della sessione di ASP.NET e altre informazioni correlate, vedere Stato sessione.