ASP.NET Session Management oktatóanyag [Példa]

ASP.NET Session Management

A HTTP-protokoll, amelyen minden webalkalmazás működik, állapot nélküli protokoll. A hontalanság csak azt jelenti, hogy az információkat nem őrzik meg egyik kérésről a másikra.

Például, ha volt egy bejelentkezési oldala, amelyen 2 szövegmező található, az egyik a név, a másik a jelszó számára. Amikor az oldalon a Bejelentkezés gombra kattint, az alkalmazásnak biztosítania kell, hogy a felhasználónév és a jelszó átkerüljön a következő oldalra.

Az ASP.Netben ez többféleképpen történik. Az első mód a ViewState nevű koncepción keresztül valósul meg. Ez az, ahol az ASP.Net automatikusan tárolja az összes vezérlő tartalmát. Azt is biztosítja, hogy ez átkerüljön a következő oldalra. Ez a ViewState nevű tulajdonságon keresztül történik.

Nem ideális a fejlesztőnek, ha bármit is megváltoztat a nézet állapotában. Ez azért van, mert csak az ASP.Net-nek kell kezelnie.

ASP.NET Session objektum

A másik módszer egy „Session Object” nevű objektum használata. A Session objektum az alkalmazás teljes életciklusa alatt elérhető. A Session objektumban tetszőleges számú kulcs-érték pár tárolható. Így bármelyik oldalon tárolhat egy értéket a Session objektumban az alábbi kódsoron keresztül.

Session["Key"]=value

Ez az értéket egy Session objektumban tárolja, és a „kulcs” rész az érték elnevezésére szolgál. Ez lehetővé teszi az érték egy későbbi időpontban történő lekérését. Egy érték lekéréséhez egyszerűen adja ki az alábbi nyilatkozatot.

Session["Key"]

ASP.NET Session objektum Példa

Példánkban a Session objektumot fogjuk használni a név szövegmezőben megadott név tárolására az oldalon. Ezután lekérjük az értéket, és ennek megfelelően megjelenítjük az oldalon. Adjuk hozzá az alábbi kódot a Demo.aspx.cs fájlhoz.

Használja a munkamenet objektumot

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;
}

Kód magyarázata: -

  1. A kód első sora a Név szövegmező vezérlőelemének értékét veszi fel, és a Session objektumban tárolja. A Session["Név"] kódjának megadásával a tulajdonságnak egy "Név" nevet adunk. A tulajdonság nevének megadásával könnyebbé válik a későbbiekben történő visszakeresés.
  2. A következő kódsor lekéri a tárolt értéket a Session objektumból. Ezt az értéket a 'Response.Write' metódussal visszaírja az ügyfélnek.
  3. Végül az űrlap összes vezérlőjét láthatatlanná tesszük. Ha ezt nem tesszük meg, akkor az összes vezérlőelem és a válaszértékeink együtt jelennek meg.

Miután elvégezte a fenti módosításokat, a következő kimenetet fogja látni

output:

Használja a munkamenet objektumot

A kimenetből láthatja, hogy a name Session értékét lekérték és megjelenítették a böngészőben.

Összegzésként

  • A munkamenet-menedzsment egy bevezető út ASP.net annak biztosítása érdekében, hogy az információ átkerüljön egyik oldalról a másikra.
  • Az oldal view state tulajdonsága arra szolgál, hogy a vezérlők információit automatikusan átadják egyik oldalról a másikra.
  • A „Session” objektum meghatározott értékek tárolására és lekérésére szolgál egy weboldalon belül.