Session Timout global.asax wird nicht ausgeführt

13/06/2008 - 15:43 von Tim Konnst | Report spam
Hallo,

ich habe ein kleines Problem mit dem Session timeot und der Methode
Session_End in der Global.asax.

Ich habe den Session timeout auf 1 Minute gesetzt und in der Global.asax
einen Response.Redirect auf die Login Seite eingerichtet. Nun habe ich
erwartet das nach dem Ablauf der Session auf die Login Seite weitergeleitet
wird. Tut es aber nicht.

Hab ich einen Denkfehler? Hier noch mein Code:

Global.asax:

void Session_End(object sender, EventArgs e)
{
Response.Redirect("Default.aspx");
}

web.config:

<sessionState mode="InProc" cookieless="true" timeout="1"></sessionState>

Schöne Grüße
Tim
 

Lesen sie die antworten

#1 Stefan Falz [MVP]
13/06/2008 - 16:41 | Warnen spam
Hallo Timm,

"Tim Konnst" schrieb:

ich habe ein kleines Problem mit dem Session timeot und der Methode
Session_End in der Global.asax.



Hast Du nicht :)

Ich habe den Session timeout auf 1 Minute gesetzt und in der Global.asax
einen Response.Redirect auf die Login Seite eingerichtet.



Zum Zeitpunkt von Session_End existiert kein Request, der umgeleitet werden
könnte. Von daher kann das nicht funktionieren.

Hab ich einen Denkfehler?



Yup.

Client - HTTP Verbindung öffnen
Server - Request Start
Server - Abarbeitung
Server - Request Ende
Client - HTTP Verbindung öffnen
...
Server - Session Ende

Hier ist, wie schon erwàhnt, der Request gar nicht mehr verfügbar.

Tschau, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

Ähnliche fragen