In Asp.net WebForms gibt es ein Ereignis namens Seession_End() in global.asax, immer wenn Sitzung Timeout ist oder Sie Session.Abandon() aufrufen, dieser Event-Handler ausgeführt wird, Ich muss ähnliche Art von Verhalten in asp.net Core haben, ist es möglich?Gibt es Session.Abandon() asp.net Core
Antwort
Die docs Abdeckung das meiste davon. Das Sitzungszeitlimit wird wie folgt festgelegt:
Da es jedoch ein Cookie ist, hat das Cookie auch ein Ablaufdatum. Wenn IdleTimeout
abläuft, läuft die Sitzung ab. Wenn der Cookie abläuft, ist die Sitzung beendet. Wenn der Cookie gelöscht wird, ist die Sitzung beendet.
Der Aufruf Session.Clear()
entfernt den Inhalt der Sitzung, behält aber die Sitzung intakt (aka, der Cookie wird nicht gelöscht) wie in der source beschrieben.
in Asp.net WebForms gibt es etwas namens Seesion_End() in global.asax, wenn Sitzung Timeout ist oder Sie Session.Abandon() aufrufen dieser Event-Handler ausgeführt wird, muss ich ähnliche Art von Verhalten in asp.net Core haben, ist es möglich? –
So gibt es keine Möglichkeit, eine Sitzung programmgesteuert ungültig zu machen, z. wenn der Benutzer eine Abmelde-Taste benutzt? Was wäre der empfohlene Weg, um eine Sitzung ungültig zu machen, abgesehen davon, dass das Idle-Timeout sehr niedrig ist? Welcher Wert kann auch überprüft werden, um sicherzustellen, dass das Timeout die Sitzung tatsächlich ungültig gemacht hat? Es scheint irgendwie, dass die Session-Implementierung in .net Core nicht vollständig implementiert ist, oder mir hier etwas fehlt. – vm370
@ vm370 Wie bereits von Tratcher erwähnt, empfiehlt sich der Aufruf von 'Session.Clear()', um eine Sitzung vom Code zu entwerten. Es gibt eine weitere Diskussion hier: [Session Issue 27] (https://github.com/aspnet/Session/issues/27) – TallMcPaul
Sie können die Sitzung löschen, indem Sie einfach anrufen:
HttpContext.Session.Clear();
- 1. Gibt es ResponseCacheAttribute für WebAPI Core?
- 2. Gibt es Rx.NET für .NET Core?
- 3. @ Html.EnumDropDownListFor in Asp.net Core
- 4. ASP.NET Core Route ändern
- 5. Gibt es sowieso Entity Framework in .NET Core?
- 6. MVC-Optimierung für Session.Clear(), Session.Abandon(), Session.RemoveAll()?
- 7. ASP.NET Core 1.0 Mocking
- 8. ASP.NET Core 1.0 Protokollierung
- 9. ASP.NET Core eigenständige Kompatibilität?
- 10. ASP.Net Core SignInManager lockoutOnFailure
- 11. Cookies und ASP.NET Core
- 12. Angular2 ASP.NET Core AntiForgeryToken
- 13. asp.net core npgsql Verbindungen
- 14. ASP.NET CORE 1.0, Imitation
- 15. Request.Files in ASP.NET CORE
- 16. ASP.NET Core Benutzerdefinierte Parameterbindung
- 17. Asp.Net Core Web Application statische Dateien gibt 404 unter Linux
- 18. ASP.NET Core 1.0 SynchronizationContext
- 19. IServiceProvider in ASP.NET Core-
- 20. ASP.Net Core Integration Testing
- 21. UserHostAddress in Asp.net Core
- 22. Asp.Net Core Reporting (SSRS)
- 23. ASP.NET Core HTTPRequestMessage gibt seltsame JSON-Nachricht zurück
- 24. Ist es möglich, JIL mit asp.net core rc2 zu verwenden?
- 25. Computing SHA1 mit ASP.NET Core
- 26. ICompileModule mit ASP.NET Core (RC2)
- 27. ASP.NET Core WebApi gibt Fehlermeldung an AngularJS $ http Versprechen
- 28. Wird ASP.NET Core RC2 veröffentlicht?
- 29. Verschlüsselte Konfiguration in ASP.NET Core
- 30. Property Injection in Asp.Net Core
Ich glaube, Sie Ihre Frage anders formulieren sollte. Schwer zu antworten! – Thomas
Haben Sie Session.Clear() versucht? – Tratcher
Ich muss das Ereignis erfassen, wenn die Sitzung automatisch eine Zeitüberschreitung hat. Gibt es einen Grund, warum dieses Ereignis aufgezeichnet werden soll oder gibt es überhaupt ein Ereignis? –