ASP.NET cookie 操作详解|cookie 写入、读取、修改、删除

来源:互联网 发布:学滑板的软件 编辑:程序博客网 时间:2024/04/30 14:29

//写入
    protected void Button2_Click(object
 sender, EventArgs e)
     {
         HttpCookie cookie=new HttpCookie("MyCook");//初使化并设置Cookie的名称

         DateTime dt=
DateTime.Now;
         TimeSpan ts = new TimeSpan(0, 0, 1,0,0);//过期时间为1分钟

         cookie.Expires = dt.Add(ts);//设置过期时间
         cookie.Values.Add("userid", "userid_value"
);
         cookie.Values.Add("userid2","userid2_value2"
);
         Response.AppendCookie(cookie);
        //
输出该Cookie的所有内容
        //Response.Write(cookie.Value); //输出为:userid=userid_value&userid2=userid2_value2 

     }

    //读取

    protected void Button1_Click(object
 sender, EventArgs e)
     {

       // HttpCookie cokie = new HttpCookie("MyCook");//初使化

        if (Request.Cookies["MyCook"]!=null
)
         {
            //Response.Write("Cookie中键值为userid的值:" + Request.Cookies["MyCook"]["userid"]);//
整行
            //Response.Write("Cookie中键值为userid2的值" + Request.Cookies["MyCook"]["userid2"]);

             Response.Write(Request.Cookies["MyCook"].Value);//输出全部的值
         }
     }

    //修改Cookie

    protected void Button3_Click(object
 sender, EventArgs e)
     {
        //获取客户端的Cookie对象

         HttpCookie cok = Request.Cookies["MyCook"
];
        
        if (cok != null
)
         {
         //修改Cookie的两种方法

             cok.Values["userid"] = "alter-value"
;
             cok.Values.Set("userid", "alter-value"
);

          //往Cookie里加入新的内容

              cok.Values.Set("newid", "newValue"
);
              Response.AppendCookie(cok);
         }

      
     }
    //删除Cookie

    protected void Button4_Click(object
 sender, EventArgs e)
     {

         HttpCookie cok = Request.Cookies["MyCook"
];
        if (cok != null
)
         {
            if (!
CheckBox1.Checked)
             {
                 cok.Values.Remove("userid");//移除键值为userid的值

             }
            else

             {
                 TimeSpan ts 
= new TimeSpan(-1, 0, 0, 0
);
                 cok.Expires = DateTime.Now.Add(ts);//删除整个Cookie,只要把过期时间设置为现在

             }
             Response.AppendCookie(cok);
         }
     }