.net自身具有一个清除Cookie的方法:
Response.Cookies.Clear();
但有些时候发现执行了该语句后Cookie仍然存在,因为该语句并不是物理删除Cookie,这里提供一个让浏览器帮助我们删除Cookie的方法:
1。删除所有Cookie
int n = Request.Cookies.Count;
for (int i = 0; i < n; i++)
{
HttpCookie myCookie = Request.Cookies[i];
myCookie.Expires = DateTime.Today.AddDays(-1);
Response.Cookies.Add(myCookie);
}
2。删除指定Cookie
//这里假设指定的Cookie为OtherInfo
if (Request.Cookies["OtherInfo"] != null)
{
HttpCookie myCookie = Request.Cookies["OtherInfo"];
myCookie.Expires = DateTime.Today.AddDays(-1);
Response.Cookies.Add(myCookie);
}
下面在说一下.net新增Cookie的方法:
//添加Cookie,名称为UserInfo
HttpCookie myCookie = new HttpCookie("UserInfo");
myCookie.Values["userName"] = Request.QueryString["p"].ToString();
myCookie.Expires = DateTime.Now.AddMinutes(5);
Response.Cookies.Add(myCookie);
//添加Cookie,名称为OtherInfo
HttpCookie otherCookie = new HttpCookie("OtherInfo");
otherCookie.Values["otherName"] = Request.QueryString["p"].ToString();
otherCookie.Expires = DateTime.Now.AddMinutes(5);
Response.Cookies.Add(otherCookie);