关于ASP.NET/C#中对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 }

  以下是在工作中遇到的问题:

  点击支持按扭时,数量加1。点过则不允许在点!

  #region btn_AddSupports_Click

  /// <summary>

  ///

  /// </summary>

  /// <param name="sender"></param>

  /// <param name="e"></param>

  private void btn_AddSupports_Click(object sender, System.Web.UI.ImageClickEventArgs e)

  {

  string cookieName = "zhuhai_zhidao_user_addsupports_" + this.questionId;

  if (Request.Cookies[cookieName] == null)

  {

  HttpCookie cookie = new HttpCookie(cookieName);

  Response.Cookies.Add(cookie);

  if (this.questionId > 0)

  {

  bool result = DAL.ZhiDao.Question.AddSupports(this.questionId, this.SystemId);

  if (result)

  {

  this.item.Supports++;

  }

  }

  this.lbl_support.Text = this.item.Supports.ToString();

  this.lbl_Message.Text = "谢谢支持!";

  }

  else

  {

  this.lbl_Message.Text = "您已点击过!";

  }

  }

  #endregion


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3