Session ve Cookie kullanımına bir örnek;
Session ve cookiler bir sistemde genelde giriş sayfasında oluşturulur, diğer sayfalarda çağırılır ve çıkış sayfasında sonlandırılırlar.
Giris.aspx.cs -Session/ Cookie Oluşturulması
protected void btnGiris_Click(object sender, EventArgs e) { Kullanici kulGiris = Erdi.EF.Kullanicis.FirstOrDefault(x => x.Kulad == txtKulAd.Text&&x.Sifre==txtSifre.Text); if (kulGiris != null) { HttpCookie cerez = new HttpCookie("cerez"); if (cbCookie.Checked) { cerez["KulAd"] = txtKulAd.Text; cerez["Sifre"] = txtSifre.Text; cerez["KullaniciId"] = (kulGiris.KullaniciID).ToString(); cerez.Expires = DateTime.Now.AddDays(1); Response.Cookies.Add(cerez); } else { cerez["KullaniciId"] = (kulGiris.KullaniciID).ToString(); cerez.Expires = DateTime.Now.AddDays(1); Response.Cookies.Add(cerez); } Response.Redirect("~/Kullanicilar/BilistProfilim.aspx"); } else { Response.Redirect("~/Kullanicilar/BilistGiris.aspx"); } }
ya da
HttpCookie cerez = new HttpCookie("cerez"); if (cbHatirla.Checked) { cerez["KulAd"] = txtKulAd.Text; cerez["Sifre"] = txtSifre.Text; cerez.Expires = DateTime.Now.AddDays(1); Response.Cookies.Add(cerez); Session["yetkiId"] = kulGiris.yetkiID; } else { Session["yetkiId"] = kulGiris.yetkiID; }
Giriş butonuna tıklandığında beni hatırlanın seçili olup olmamasına göre kontroller sağlanır. Ayrıca giriş sayfasının pageblooadında cookie çağırılarak kayıtlı cookie bilgileri kontrol edilir.
protected void Page_Load(object sender, EventArgs e) { if (IsPostBack) return; HttpCookie cerez = Request.Cookies["cerez"]; if(cerez!=null) { string Ad = Request.Cookies["cerez"]["kulAd"]; string sifre = Request.Cookies["cerez"]["Sifre"]; if (Ad != "" && sifre != "") { txtKulAd.Text = Ad; txtSifre.Text = sifre; } } else { } }
Diğer sayfalarda basitçe cookie çağırma işlemi ise aşağıdaki satır gibi yapılır.
int KullaniciId = Convert.ToInt32(Request.Cookies["cerez"]["KullaniciId"]);
Çıkış sayfasında ise sonlanması istenilen cookie bitirilir.
Request.Cookies["Kullanici"]["KullaniciId"] = "";
0 yorum:
Yorum Gönder