前一阵做的程序,用户进入后写入Cookie,再次进入后读取Cookie,然后判断该用户是否曾经访问过。
可最近出现了问题。刚才检查时发现Cookie的有效期不对。读取后的结果是“0001-1-1 0:00:00”又新建立了一个页面,先写入Cookie,再读取,结果还是“0001-1-1 0:00:00”,这是为什么。
===================
HttpCookie iCo = new HttpCookie("TestCookie");
iCo.Value = DateTime.Now.ToString();
iCo.Expires = DateTime.Now.AddHours(1);
Response.Cookies.Add(iCo); string output = "";
HttpCookie aCookie;
for(int i = 0 ;i < Request.Cookies.Count - 1; i ++)
{
aCookie = Request.Cookies[i];
output += "Cookie名称   = " + Server.HtmlEncode(aCookie.Name) + "<br>";
output += "Cookie值     = " + Server.HtmlEncode(aCookie.Value) + "<br>";
output += "Cookie有效期 = " + Server.HtmlEncode(aCookie.Expires.ToString()) + "<br><br>";
}
this.Label1.Text = output;
=================
这是新页面的代码*****************
Cookie名称 = ASP.NET_SessionId
Cookie值 = gqj5yuznnwzm0zviafvq3z25
Cookie有效期 = 0001-1-1 0:00:00Cookie名称 = TestCookie
Cookie值 = 2007-1-8 16:30:19
Cookie有效期 = 0001-1-1 0:00:00
*****************
这是读取后的结果