Tutorial zur ASP.NET-Sitzungsverwaltung [Beispiel]
ASP.NET-Sitzungsverwaltung
Das HTTP-Protokoll, auf dem alle Webanwendungen arbeiten, ist ein zustandsloses Protokoll. Mit zustandslos ist lediglich gemeint, dass Informationen nicht von einer Anfrage zur anderen gespeichert werden.
Wenn Sie beispielsweise eine Anmeldeseite mit zwei Textfeldern haben, eines fรผr den Namen und eines fรผr das Kennwort, muss die Anwendung sicherstellen, dass Benutzername und Kennwort an die nรคchste Seite weitergegeben werden, wenn Sie auf dieser Seite auf die Schaltflรคche โAnmeldenโ klicken.
In ASP.Net erfolgt dies auf verschiedene Arten. Der erste Weg fรผhrt รผber ein Konzept namens ViewState. Dabei speichert ASP.Net automatisch den Inhalt aller Steuerelemente. Es stellt auch sicher, dass dies auf die nรคchste Seite weitergeleitet wird. Dies erfolgt รผber eine Eigenschaft namens ViewState.
Fรผr einen Entwickler ist es nicht ideal, irgendetwas am Ansichtsstatus zu รคndern. Dies liegt daran, dass es nur von ASP.Net verarbeitet werden sollte.
ASP.NET-Sitzungsobjekt
Die andere Mรถglichkeit besteht darin, ein Objekt namens โSitzungsobjektโ zu verwenden. Das Session-Objekt ist wรคhrend des gesamten Lebenszyklus der Anwendung verfรผgbar. Sie kรถnnen beliebig viele Schlรผssel-Wert-Paare im Session-Objekt speichern. Sie kรถnnen also auf jeder Seite รผber die folgende Codezeile einen Wert im Session-Objekt speichern.
Session["Key"]=value
Dadurch wird der Wert in einem Sitzungsobjekt gespeichert und der Teil โSchlรผsselโ wird verwendet, um dem Wert einen Namen zu geben. Dadurch kann der Wert zu einem spรคteren Zeitpunkt abgerufen werden. Um einen Wert abzurufen, kรถnnen Sie einfach die folgende Anweisung ausfรผhren.
Session["Key"]
Beispiel fรผr ein ASP.NET-Sitzungsobjekt
In unserem Beispiel verwenden wir das Session-Objekt, um den im Textfeld โNameโ auf der Seite eingegebenen Namen zu speichern. Anschlieรend rufen wir diesen Wert ab und zeigen ihn entsprechend auf der Seite an. Fรผgen wir den folgenden Code zur Datei Demo.aspx.cs hinzu.
protected void btnSubmit_Click(object sender,EventArgs e)
{
Session["Name"] = txtName.Text;
Response.Write(Session["Name"]);
lblName.Visible = false;
txtName.Visible = false;
1stLocation.Visible = false;
chkC.Visible = false;
chkASP.Visible = false;
rdMale.Visible = false;
rdFemale.Visible = false;
btnSubmit.Visible = false;
}
Code-Erklรคrung:-
- Die erste Codezeile รผbernimmt den Wert des Textfeld-Steuerelements โNameโ und speichert ihn im Sitzungsobjekt. Indem wir den Code โSession[โNameโ]โ angeben, geben wir der Eigenschaft den Namen โNameโ. Durch die Angabe eines Namens fรผr die Eigenschaft wird es einfacher, sie zu einem spรคteren Zeitpunkt abzurufen.
- Die nรคchste Codezeile ruft den gespeicherten Wert aus dem Session-Objekt ab. Anschlieรend schreibt er diesen Wert รผber die Methode โResponse.Writeโ zurรผck an den Client.
- Zum Schluss machen wir alle Steuerelemente im Formular unsichtbar. Wenn wir das nicht tun, werden alle Steuerelemente und unsere Antwortwerte zusammen angezeigt.
Sobald Sie die oben genannten รnderungen vorgenommen haben, sehen Sie die folgende Ausgabe
Ausgang:
Aus der Ausgabe kรถnnen Sie ersehen, dass der Sitzungswert โNameโ abgerufen und im Browser angezeigt wurde.
Zusammenfassung
- Sitzungsmanagement ist ein Weg hinein ASP.net um sicherzustellen, dass Informationen von einer Seite zur anderen weitergegeben werden.
- Die Ansichtsstatuseigenschaft einer Seite wird verwendet, um die Informationen von Steuerelementen automatisch von einer Seite an die andere weiterzugeben.
- Das โSessionโ-Objekt wird zum Speichern und Abrufen bestimmter Werte innerhalb einer Webseite verwendet.


