写的时候是这样的:HttpCookie tmf = new HttpCookie("mycookie");
....
tmf.Expires = DateTime.Now.AddDays(1);
Response.Cookies.Add(tmf);明明截止日期是:2005-6-6 9:30:01
  
读取: Request.Cookies["mycookie"].Expires 取cookie的截止日期是0001-1-1 00:00:00 怎么回事?如何获得cookie的有效时间?

解决方案 »

  1.   

    DateTime.Now.AddDays(1);
    是不是這句把時間的格式改變了.
      

  2.   

    改用
    TimeSpan ts = new TimeSpan(1,0,0,0);
    tmf.Expires = DateTime.Now.Add(ts);得到的时间还是一样!
      

  3.   

    cookie过期日期是没法读取的,没保存在cookie里面
      

  4.   

    读取Cookie  1. Request.Cookies 属性中包含了客户端发送到服务器的所有Cookie的集合,只有在请求URL的作用范围内的Cookie才会被浏览器连同Http请求一起发送到服务器。  2. Name 和 Value 属性和子键的值很容易读到。  3. Domain 和 Path 属性 是读不到的,读Domain属性永远是””,读Path属性永远是 ”/” 。本来这些属性的用途很有限。如果您的页面与 Cookie 不在相同的域,您根本就不会在页面的位置接收到该 Cookie。  4. 也无法读取Cookie 的过期日期和时间。事实上,当浏览器向服务器发送 Cookie 信息时,浏览器并未将过期信息包括在内。您可以读取 Expires 属性,但总是返回为零的日期/时间值。Expires 属性的主要作用是帮助浏览器执行有关 Cookie 保存的日常管理。从服务器的角度来看,Cookie 要么存在要么不存在,所以对服务器而言,有效期并不是有用的信息。
    所以,浏览器在发送 Cookie 时并不提供此信息。如果您需要 Cookie 的过期日期,就必须重新设置。