Was ist der Unterschied zwischen dem Zerstören einer Sitzung und dem Entfernen ihrer Werte? Können Sie bitte ein Beispiel dafür angeben?
Ich habe nach dieser Frage gesucht, aber keine vollständige Antwort erhalten. Einige Antworten sind:
Session.Abandon()
zerstört die SitzungSession.Clear()
entfernt einfach alle Werte
Ein Freund sagte mir Folgendes:
Durch das Löschen der Sitzung wird die Sitzung nicht deaktiviert. Sie ist weiterhin mit derselben ID für den Benutzer vorhanden, die Werte werden jedoch einfach gelöscht.
Durch den Abbruch wird die Sitzung vollständig zerstört. Dies bedeutet, dass Sie eine neue Sitzung beginnen müssen, bevor Sie weitere Werte in der Sitzung für diesen Benutzer speichern können.
Der folgende Code funktioniert und löst keine Ausnahmen aus.
Session.Abandon();
Session["tempKey1"] = "tempValue1";
Wenn Sie eine Sitzung abbrechen (), erhalten Sie (oder besser gesagt der Benutzer) eine neue Sitzungs-ID
Wenn ich die Sitzung teste, ändert sich nichts, wenn ich die Sitzung abbreche.
Ich finde nur einen Unterschied:
session.Abandon()
Erhöht das Session_End
Ereignis