Ich habe Handler für meine Session_Start und Session_End Ereignisse. Wenn ich die Anwendung zum ersten Mal starte, funktioniert alles einwandfrei. Wenn ich die Sitzung verlasse und das Standard-Timeout auftritt, sehe ich meinen Session_End-Wurf. Ich erwarte dieses Verhalten.ASP.NET Session_End direkt nach Session_Start nach einem Sitzungszeitlimit aufgerufen
Sagen wir aber, ich komme nach der Zeitüberschreitung zurück und aktualisiere eine Seite. Die Session_Start-Methode wird ausgeführt, aber dann wird sofort die Session_End-Methode ausgeführt. Ich erwarte weitere 15 Minuten Leerlauf zwischen Session_Start und Session_End.
Was wäre das Problem?
EDIT: Ja, gleiche Sitzung ID.
EDIT 2: Cookies sehen so aus, als sollten sie am Ende der Sitzung ablaufen. Ich bin mir nicht sicher, warum ich diese Schleife von Session_Start/Session_End bekomme. Ich habe auch versucht, Session.Abandon() von Session_End aufzurufen, und das hat nicht funktioniert. Dies läuft auch vom ASP.NET Development Server ab. Ich habe es noch nicht auf einem echten IIS-Server versucht.
Ich habe gerade das gleiche Problem gesehen. Obwohl ich mir über Ihre Arbeit nicht sicher bin, da wir für jede erstellte Sitzung * immer * etwas in der Sitzung speichern. Ich habe gelesen, dass Session_End nicht ausgelöst wird, wenn Sie eine völlig leere Sitzung haben [http://www.vikramlakhotia.com/Mystries_of_when_does_Session_End_event_fires_in_AspNet.aspx] [In meinem Fall hatte ich einen Click-Handler auf der Seite, die AJAX-Anfragen an die Server - wenn das einen Unterschied macht] –
Verwenden Sie 'Session_Start' und' Session_End' nicht für *** Count *** Benutzer? WebFarm. Jeder Quellcode samplefull? –