日期:2014-05-18  浏览次数:20799 次

为何我修改不了COOKIE???可以读取
当我看到提交三次不正确后, 显示的 Request.Cookies["Info"].Values["fb_czm_count"] 值为“6 ”, 一点也没错,但是离开这个页面, 再次进去的时候,又被成了在登录的时候初始化的值 “0” 为什么会这样?

我在Global.asax里初始化
cookie.Values.Add("fb_czm_count", "0"); //录入了多少次绑定码
  Response.AppendCookie(cookie);//确定写入cookie



我的程序页面一部份代码


  count = count + 1;
  if (count >= 3)
  {
  HttpCookie cok = Request.Cookies["Info"];
  cok.Values["fb_czm_count"] = "6";
  Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script>showwin('" + Request.Cookies["Info"].Values["fb_czm_count"] + "提交3次的发布码都是错误的!!请重新核对后再操作');Time2();</script>");  
  return;
  }
  else
  {
  Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert('请输入正确的发布码!');history.back();</script>");
  CZM1.Focus();
  return;
  }

------解决方案--------------------
不要在Global.asax里面进行初始值,Global.asax随时可能进行重启

只在你操作的代码了进行赋值即可

另外,注意设置Expires超时时间

另外,操作Cookie的方法采用
http://dotnet.aspx.cc/file/Difference-Response-Cookies-Request-Cookies.aspx
尽量使用
Response.Cookies.Add(hc);
------解决方案--------------------
http://msdn.microsoft.com/zh-cn/library/ms178194%28VS.80%29.aspx

ASP.NET 操作 Cookie 的方法