ASP.NET Oturum Yönetimi Eğitimi [Örnek]
ASP.NET Oturum Yönetimi
Tüm web uygulamalarının üzerinde çalıştığı HTTP protokolü durum bilgisi olmayan bir protokoldür. Vatansızlık, bilgilerin bir talepten diğerine saklanmadığı anlamına gelir.
Örneğin, biri isim diğeri şifre için olmak üzere 2 metin kutusu bulunan bir giriş sayfanız varsa. Bu sayfadaki Giriş düğmesine tıkladığınızda, uygulamanın kullanıcı adı ve şifrenin bir sonraki sayfaya iletilmesini sağlaması gerekir.
ASP.Net'te bu çeşitli yollarla yapılır. İlk yol ViewState adı verilen bir kavramdır. ASP.Net'in tüm kontrollerin içeriğini otomatik olarak sakladığı yer burasıdır. Ayrıca bunun bir sonraki sayfaya aktarılmasını da sağlar. Bu, ViewState adı verilen bir özellik aracılığıyla yapılır.
Bir geliştiricinin görünüm durumundaki herhangi bir şeyi değiştirmesi ideal değildir. Bunun nedeni yalnızca ASP.Net tarafından ele alınması gerektiğidir.
ASP.NET Oturum nesnesi
Diğer yol ise “Oturum Nesnesi” adı verilen bir nesneyi kullanmaktır. Session nesnesi uygulamanın yaşam döngüsü boyunca kullanılabilir. Session nesnesinde istediğiniz sayıda anahtar/değer çiftini saklayabilirsiniz. Yani herhangi bir sayfada, aşağıdaki kod satırı aracılığıyla Session nesnesine bir değer kaydedebilirsiniz.
Session["Key"]=value
Bu, değeri bir Session nesnesinde depolar ve 'anahtar' kısmı değere bir isim vermek için kullanılır. Bu, değerin daha sonraki bir zamanda alınmasına olanak tanır. Bir değeri almak için, aşağıdaki ifadeyi verebilirsiniz.
Session["Key"]
ASP.NET Oturum nesnesi Örneği
Örneğimizde, sayfadaki name textbox alanına girilen ismi depolamak için Session nesnesini kullanacağız. Daha sonra bu değeri alıp sayfada buna göre göstereceğiz. Aşağıdaki kodu Demo.aspx.cs dosyasına ekleyelim.
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; }
Kod Açıklaması:-
- Kodun ilk satırı Name textbox denetiminin değerini alır ve Session nesnesinde depolar. Session[“Name”] kodunu belirterek, özelliğe “Name” adında bir ad veriyoruz. Özellik için bir ad belirterek, daha sonraki bir zamanda onu almak daha kolay hale gelir.
- Sonraki kod satırı, Session nesnesinden depolanan değeri alır. Daha sonra bu değeri 'Response.Write' yöntemi aracılığıyla istemciye geri yazar.
- Son olarak form üzerindeki tüm kontrolleri görünmez hale getiriyoruz. Bunu yapmazsak tüm kontroller artı yanıt değerlerimiz birlikte görüntülenecektir.
Yukarıdaki değişiklikleri yaptıktan sonra aşağıdaki çıktıyı göreceksiniz
Çıktı:
Çıktıdan, adın Oturum değerinin alındığını ve tarayıcıda görüntülendiğini görebilirsiniz.
ÖZET
- Oturum yönetimi bir yoldur ASP.net bilgilerin bir sayfadan diğerine aktarılmasını sağlamak.
- Bir sayfanın görünüm durumu özelliği, kontrollerin bilgilerini bir sayfadan diğerine otomatik olarak aktarmak için kullanılır.
- 'Oturum' nesnesi bir web sayfasındaki belirli değerleri depolamak ve almak için kullanılır.