cookie结构:cookieName1=子键名称1=子键值1&子键名称2=子键值2
声明一个cookie对象:HttpCookie cookie=new HttpCookie("MyCookie");//初使化并设置Cookie的名称
newcookie.Expires = DateTime.Now.AddMinutes(10);
cookie.Values.Add("userid", "userid_value");
cookie.Values.Add("userid2","userid2_value2");f
Response.SetCookie(cookie);//Response.AppendCookie(cookie);
//输出该Cookie的所有内容
//Response.Write(cookie.Value);//输出为:userid=userid_value&userid2=userid2_value2
//取cookie:
HttpCookie oldCookie = Request.Cookies["MyCookie"]; string strCookieValue = oldCookie.Values["userid2"];==========================================================================
修改指定cookie对象中的一个cookie值:
HttpCookie cok = Request.Cookies["MyCook"]; //获得指定的cookie对象
修改一个cookie的值(当然这个userid是在之前已经加到名为MyCook cookie对象中的):
cok.Values["userid"] = "alter-value";Response.SetCookie(cok); //再把名为MyCook的cookie对象更新一下
读取cookie
if(Request.Cookies["userInfo"] != null) //确保cookie对象存在 { Label1.Text = Server.HtmlEncode(Request.Cookies["userInfo"]["userName"]); //确保在浏览器中不去执行cookie中的 < > 等符号 Label2.Text = Server.HtmlEncode(Request.Cookies["userInfo"]["lastVisit"]); }
删除cookie:
cok.Values.Remove("userid");//移除键值为userid的值
======================================================
清除Cookie
public static void RemoveCookie(string name)
{
HttpCookie cookie = HttpContext.Current.Request.Cookies[name];
if (cookie != null)
{
HttpContext.Current.Request.Cookies.Remove(name);
}
}
删除Cookie中的子健
string subkeyName; subkeyName = "userName"; HttpCookie aCookie = Request.Cookies["userInfo"]; aCookie.Values.Remove(subkeyName); aCookie.Expires = DateTime.Now.AddDays(1); Response.Cookies.Add(aCookie);