2011-06-19 19 views
19

MVC web sitesinde çalışıyorum ve çıkış bağlantımdaki mevcut tüm alan çerezlerini kaldırmak istiyorum.MVC web sitesinde mevcut tüm alan çerezleri nasıl kaldırılır?

this.ControllerContext.HttpContext.Response.Cookies.Clear(); 

ve bu:

Response.Cookies.Clear(); 

ama ikisi de işe yaramadı ve çerezleri hala orada

Bu çalıştı.

+0

olası yinelenen [Nasılsınız asp.net mvc 3 ve C# kullanarak net çerezleri?] (Http://stackoverflow.com/questions/5122404/how-do-you-clear-cookies-using- asp-net-mvc-3-ve-c) –

+1

Bence bu adam sadece bir çerezleri silmeye çalışıyordu. Bu adam hepsini silmek istiyor – Swift

+0

Evet, yalnızca bir çerez silmek istiyorum, tüm çerezleri silmek istiyorum, tüm etki alanı çerezleri silme hakkında soruyorum. –

cevap

42

Bu nasıl?

string[] myCookies = Request.Cookies.AllKeys; 
foreach (string cookie in myCookies) 
{ 
    Response.Cookies[cookie].Expires = DateTime.Now.AddDays(-1); 
} 
+0

Bu çok iyi çalıştı, teşekkürler. –

+0

Sorun değil. Mutlu yardımcı olabilirim. – Swift

+0

basit ama iş :-) – vNext

1

Bu nedir?

if (Request.Cookies["cookie"] != null) 
    { 
     HttpCookie myCookie = new HttpCookie("cookie"); 
     myCookie.Expires = DateTime.Now.AddDays(-1d); 
     Response.Cookies.Add(myCookie); 
    } 
ait
+0

Bu, mevcut olmayanları kaldırarak yeni çerezler ekliyor, değil mi? –

+0

Bunun için üzgünüm. Lütfen bunu kontrol et. –

+0

düzenlenir, böylece fikriniz mevcut olanla aynı ada sahip yeni bir çerez eklemek, ancak -1 gün son kullanma tarihi ile mi? –

İlgili konular