Condividi tramite


Controllo dello stato sessione

Aggiornamento: novembre 2007

In Microsoft ASP.NET è disponibile un oggetto HttpSessionState che è possibile utilizzare per salvare le informazioni relative a una sessione utente in più richieste. La funzionalità di gestione della sessione ASP.NET è scalabile e affidabile ed è possibile utilizzarla in Web farm.

Per impostazione predefinita, l'oggetto Session ASP.NET utilizza un cookie dal lato client per memorizzare un identificatore. L'identificatore viene utilizzato per individuare la sessione nei percorsi di andata e ritorno al server. ASP.NET tuttavia supporta anche una modalità di sessione senza cookie mediante la quale il client viene inizialmente reindirizzato a un nuovo URL contenente l'ID di sessione e l'ID di sessione viene in seguito analizzato in modo automatico esternamente all'URL.

Per le pagine Web ASP.NET per dispositivi mobili in cui viene utilizzato lo stato sessione, è necessario prendere in considerazione i fattori seguenti:

  • Alcuni gateway e dispositivi mobili non supportano i cookie. In questi casi è necessario che la gestione della sessione del server Web sia impostata sulla modalità senza cookie.

  • In alcuni dispositivi mobili si verificano problemi di gestione degli URL relativi dopo il reindirizzamento da parte della gestione della sessione senza cookie.

Poiché alcuni dispositivi mobili non supportano i cookie, è necessario individuare tecniche alternative per scenari per cui è richiesto lo stato persistente. Quando ad esempio un utente accede a una pagina, è possibile che venga assegnato un ID di accesso utilizzato per il resto della sessione. In genere viene utilizzato un cookie per questa forma di autenticazione, definita autenticazione basata sui cookie. Tuttavia, l'autenticazione basata sui cookie non può essere utilizzata per i dispositivi che non supportano i cookie. In questo caso è necessario basarsi su un altro meccanismo di gestione dello stato.

Stato sessione

Un'alternativa è rappresentata dall'utilizzo dello stato sessione. Poiché è possibile configurare lo stato sessione in modo che funzioni senza cookie, l'utente può mantenere l'ID nello stato sessione. Uno svantaggio di questa tecnica tuttavia è rappresentato dalla scadenza delle informazioni contemporaneamente alla sessione. Un altro svantaggio è determinato dal fatto che per questa tecnica è sempre necessario utilizzare lo stato sessione.

Variabili nascoste

Nelle pagine Web ASP.NET per dispositivi mobili non è incluso un controllo mobile per la scrittura di variabili nascoste. Nel form è disponibile invece un insieme denominato HiddenVariables nella classe MobilePage. Tutte le coppie nome/valore memorizzate in questo insieme vengono mantenute come variabili nascoste. Nell'insieme HiddenVariables vengono inserite automaticamente queste variabili nascoste al momento dell'invio del form.

Per questa tecnica alternativa vengono utilizzate le variabili nascoste in una pagina. Le variabili nascoste vengono automaticamente e nuovamente inviate come parte dell'invio di un form, sia che l'invio sia alla stessa pagina o a una pagina differente.

Vedere anche

Concetti

Controllo dello stato di visualizzazione

Cenni preliminari sulla gestione dello stato ASP.NET

Riferimenti

LoadPrivateViewState

SavePrivateViewState

HiddenVariables

MobilePage

Altre risorse

Supporto dello stato di visualizzazione

Creazione di pagine Web ASP.NET per dispositivi mobili

Guida per gli sviluppatori di applicazioni

Sviluppo di pagine Web ASP.NET per dispositivi mobili