导航

C# httpcookie asp.net中cookie的使用

Posted on 2009-03-08 20:45  寂寞的小星星  阅读(6021)  评论(0编辑  收藏  举报

今天有空就把操作cookie的写了,虽然很简单,不过免得到时候忘记了,之前就是忘记了还很实验了一番才弄出来,郁闷了。
         下面是写cookie
1 HttpCookie cookie = new HttpCookie("Info");//定义cookie对象以及名为Info的项
2 DateTime dt = DateTime.Now;//定义时间对象
3 TimeSpan ts=new TimeSpan(1,0,0,0);//cookie有效作用时间,具体查msdn
4 cookie.Expires = dt.Add(ts);//添加作用时间
5 cookie.Values.Add("user","cxbkkk");//增加属性
6 cookie.Values.Add("userid","1203");
7 Response.AppendCookie(cookie);//确定写入cookie中         读取cookie
1 if(Request.Cookies["Info"]!=null)
2 {
3      string temp=Convert.ToString(Request.Cookies["Info"].Values["user"])+"   "+Convert.ToString(Request.Cookies["Info"].Values["userid"]);
4      //读全部就用Request.Cookies["Info"].Value)
5      if(temp=="")
6      {
7          Response.Write("空");
8      }
9      else
10          Response.Write(temp);
11 }
12 else
13 {
14      Response.Write("error");
15 }         修改cookie
1 Response.Cookies["Info"]["user"] = "2";
2 Response.Cookies["Info"].Expires = DateTime.Now.AddDays(1);         删除cookie下的属性
1 HttpCookie acookie=Request.Cookies["Info"];
2 acookie.Values.Remove("userid");
3 acookie.Expires = DateTime.Now.AddDays(1);
4 Response.Cookies.Add(acookie);         删除所有cookie,就是设置过期时间为现在就行了
1 int limit=Request.Cookies.Count - 1;
2 for(int i=0;i<limit;i++)
3 {
4      acookie = Request.Cookies(i)
5      acookie.Expires = DateTime.Now.AddDays(-1)
6      Response.Cookies.Add(acookie)
7 }        

 

 

 

C#
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
    protected void Page_Load(object sender, EventArgs e)
      {
          StringBuilder sb = new StringBuilder();
        // Get cookie from the current request.
          HttpCookie cookie = Request.Cookies.Get("DateCookieExample");
        
        // Check if cookie exists in the current request.
        if (cookie == null)
          {
              sb.Append("Cookie was not received from the client. ");
              sb.Append("Creating cookie to add to the response. <br/>");
            // Create cookie.
              cookie = new HttpCookie("DateCookieExample");
            // Set value of cookie to current date time.
              cookie.Value = DateTime.Now.ToString();
            // Set cookie to expire in 10 minutes.
              cookie.Expires = DateTime.Now.AddMinutes(10d);
            // Insert the cookie in the current HttpResponse.
              Response.Cookies.Add(cookie);
          }
        else
          {
              sb.Append("Cookie retrieved from client. <br/>");
              sb.Append("Cookie Name: " + cookie.Name + "<br/>");
              sb.Append("Cookie Value: " + cookie.Value + "<br/>");
              sb.Append("Cookie Expiration Date: " +
                  cookie.Expires.ToString() + "<br/>");
          }
          Label1.Text = sb.ToString();
      }
</script>
<html    >
<head runat="server">
      <title>HttpCookie Example</title>
</head>
<body>
      <form id="form1" runat="server">
      <div>
        <asp:Label id="Label1" runat="server"></asp:Label>
      </div>
      </form>
</body>
</html>