Controllo dello stato sessione

Mediante Microsoft ASP.NET viene reso disponibile un oggetto session state che è possibile utilizzare per salvare informazioni relative a una sessione utente nell'ambito di 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. Tuttavia, l'identificatore supporta anche una modalità di sessione senza cookie mediante cui il client viene inizialmente reindirizzato a un nuovo URL contenente l'ID di sessione e mediante cui l'ID di sessione viene in seguito analizzato in modo automatico esternamente all'URL.

È necessario considerare i seguenti fattori per le applicazioni Web per dispositivi mobili ASP.NET che utilizzano lo stato sessione:

  • Alcuni gateway e dispositivi mobili non supportano i cookie. Per eseguire un'applicazione Web utilizzabile da questi dispositivi è necessario che la gestione della sessione del server Web sia impostata sulla modalità senza cookie.
  • Alcuni dispositivi mobili presentano difficoltà nella gestione di URL relativi dopo essere state reindirizzati dalla tecnica di gestione della sessione senza cookie.

Alcuni dispositivi mobili non supportano i cookie. In questo modo è necessario per gli sviluppatori trovare tecniche alternative per scenari per cui è richiesto lo stato persistente. Se, ad esempio, un utente accede a una pagina, è possibile che allo sviluppatore 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. È necessario che lo sviluppatore si affidi a 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. Tuttavia, uno svantaggio di questa tecnica è 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

Nei Mobile Web Forms ASP.NET non è incluso un controllo mobile per la scittura di variabili nascoste. Diversamente, nel form all'interno della classe MobilePage è presente un insieme denominato HiddenVariables che è possibile utilizzare per specificare le variabili nascoste. Tutte le coppie nome/valore memorizzate in questo insieme vengono mantenute come variabili nascoste. L'insieme HiddenVariables viene automaticamente ricompilato con 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

Controllo dello stato di visualizzazione | Supporto dello stato di visualizzazione | Creazione di applicazioni Web mobili ASP.NET | Guida per gli sviluppatori di applicazioni | Sviluppo di applicazioni Web mobili | Gestione dello stato di ASP.NET | LoadPrivateViewState | Gestione dello stato in un controllo | SavePrivateViewState | HiddenVariables | MobilePage