Asp.net Cookie Kullanımı

Cookie nedir diye anlatmaya pek gerek yok ancak  Internette heryerde geziyor ne olduğu.
internette bu konu hakkında araştırma yaparken hep aynı örnekler yapılmış. Ben biraz daha farklı ve bir cookie içinde birden fazla değerin tutulmasıyla ilgili, kendi işlerimde de yararlandığım bir örnek yapacağım. Önce cookie oluşturan metodumuzu yazalım.

      HttpContext _context = HttpContext.Current;

        public void createCookie(string cookieName, double ExpDay, Dictionary _values)
        {
            try
            {
                HttpCookie _cookie = new HttpCookie(cookieName);
                foreach (string key in _values.Keys)
                {
                    _cookie.Values.Add(key, _values[key]);
                }
                _cookie.Expires = DateTime.Now.AddDays(ExpDay);
                _context.Response.Cookies.Add(_cookie);
                _context.Response.Write(“Cookie başarıyla kaydedildi.”);
            }
            catch (Exception ex)
            {
                _context.Response.Write(ex.Message);
            }  
        }

Cookie oluştururken birden fazla değer eklenebilmesi için böyle bir yola başvurdum. Daha farklı yollarda izlenebilir.
Örneğin kullanıcının ihtiyaç duyulan bilgilerini cookie’de tutabiliriz. Şimdide cookie okuma metodunu yazalım.

public string readCookie(string cookieName, string valueKey)
        {
            try
            {
                return _context.Request.Cookies[cookieName][valueKey];
            }
            catch (Exception ex)
            {
                _context.Response.Write(ex.Message);
                return null;
            }
        }

İşinize yarayabileceğini düşündüğüm için cookie silme metodunu da ekliyorum. Eski bir cookie bilgisini silmek isterseniz
Aşağıdaki metodu kullanabilirsiniz. Gerçi metod silme işlemi falan yapmıyor. Sadece geçerlilik süresini bitiriyor ve bu sayede
cookie otomatik olarak silinmiş oluyor.

public void deleteCookie(string cookieName)
        {
            if (Request.Cookies[cookieName] != null)
            {
                HttpCookie myCookie = new HttpCookie(cookieName);
                myCookie.Expires = DateTime.Now.AddDays(-1d);
                Response.Cookies.Add(myCookie);
            }
        }

Advertisements

2 thoughts on “Asp.net Cookie Kullanımı

  1. teşekkürler . Bunu nerde kullansak olur. Anasayfanın .cs sayfasında mı?

    • Cookie’ler kullanicinin bilgisayarinda bazi bilgileri tutmak amaci ile kullaniliyor (Merhaba Ali hosgeldin vs yada renk tema vs ayarlari tutmak icin ) ancak dezavantaji içeriği okunabilir olmasinin yani sira cookie kullanimina kapali tarayicilarda projenin calismamasi anlamina geliyor.

      Kullanici adi sifre vs gibi bilgilerin cookie de tutulmamasi gerekir!

      kullanim yerine gelince genelde login.cs de bilgileri alip default.cs te görüntülemek yada login basarili ise yine default.cs de görüntülemek yada kullanmak en uygun kullanim alani ancak bu kesin koşul değil
      cookie nerede lazimsa orada okunabilir.

      umarim aciklayici olmuştur.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s