Session state messaggio automatico come avviso

mercoledì 04 febbraio 2015 - 16.45
Tag Elenco Tags  VB.NET

trinity Profilo | Guru

salve ragazzi allora sarò molto breve per gestire la pulizia della session e fare una redirect alla pagina di login io ho creato questo:

prima di tutto nel web config ho scritto questo parametro:

<sessionState timeout="3" /> in modo tale che dopo 3 min di inattività la pagina deve essere reindirizzata a quella di login

poi nella pagina in cui l'utente lavora nell'evento init ho scritto questo:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

funziona perfettamente in tutti i browser. Adesso è possibile e, se si come, fare in modo che in automatico dopo il tempo trascorso esca un messaggio di sessione scaduta ? dovrei inserire un time nella pagina?

ciao e grazie
Cirillo Fabio
www.trycontact.com
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

andrestu Profilo | Expert

guarda io l'ho fatto in questo modo, ti posto il codice così comè...

protected override void OnInit(EventArgs e)
{
// controllo scadenza sessione su tutte le pagine
// Session.Abandon() richiesto per chiudere la sessione nel caso in cui questo controllo avviene dopo il session-start
if (Session.IsNewSession && IsPostBack)
{
Session.Abandon();
throw new ExceptionSessionTimeOut();
}

base.OnInit(e);
}

questo è un estratto di una mia pagina personale la cui classe eredita da Page
ovviamente "ExceptionSessionTimeOut" è una custom exception che genera un popup di avviso

Andrea Restucci - Web Developer

trinity Profilo | Guru

ciao

ma questo tuo codice parte nell'evento init quando l'utente riprende ad utilizzare la pagina, giusto?
>protected override void OnInit(EventArgs e)
> {
>// controllo scadenza sessione su tutte le pagine
>// Session.Abandon() richiesto per chiudere la sessione nel caso
>in cui questo controllo avviene dopo il session-start
> if (Session.IsNewSession && IsPostBack)
> {
> Session.Abandon();
> throw new ExceptionSessionTimeOut();
> }
>
> base.OnInit(e);
> }
>
>questo è un estratto di una mia pagina personale la cui classe
>eredita da Page
>ovviamente "ExceptionSessionTimeOut" è una custom exception che
>genera un popup di avviso
>
>Andrea Restucci - Web Developer

Cirillo Fabio
www.trycontact.com
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

andrestu Profilo | Expert

si in ogni pagina del sito


Andrea Restucci - Web Developer

andrestu Profilo | Expert

solo che alle volte può essere un pò "fastidioso" per l'utente, il fatto è che io faccio un uso massivo di variabili memorizzate in Session, quindi in questo caso mi evito di dover controllare in ogni parte del codice se vado in contro ad eccezioni per mancanza di oggetti in Session... non so se mi sono spiegato... comunque il timeout a 3 minuti mi sembra un pò poco, anzi io non mi preoccupo del tempo, quando la sessione scade l'utente viene avvisato con popup che redireziona alla home, ovviamente l'autenticazione rimane...


Andrea Restucci - Web Developer

trinity Profilo | Guru

a me il problema è un altro anche non so se conosci i componenti telerik x il web, io li sto utilizzando e vanno bene eccetto per una errore che mi da solo explorer quando l'id session è scaduto e dovrei fare l'indirizzamento alla pagina di avviso
Cirillo Fabio
www.trycontact.com
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

andrestu Profilo | Expert

si conosco ma non li ho mai utilizzati

Andrea Restucci - Web Developer
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5