可以通过 Response.Cookies集合添加Cookie来创建新的Cookie。
Repons.Cookies集合包含所有Web服务器发送到Web浏览器的Cookie。
eg: Response.Cookies["message"].Value="Hello";
如上例,创建的一个会话Cookie。 当关闭Web浏览器时,该Cookie就消失了。
如果希望创建持久化Cookie,则需要为Cookie指定一个过期时间。
eg:
Response.Cookies["message"].Value="Hello";
Response,Cookies["message"].Expires=DateTime.Now.AddYears(2);
注意:此例中过期时间被设为2年。 当某个Cookie设置了过期时间后,该Cookie就被保存为Cookie了。
读取Cookie
if(Reques.Cookies["message"]!=null)
{
lblCookieValue.Text=Reques.Cookies["message"].Value;
}
读取所有的Cookie
ArryList colCookies=new ArrayList();
for(int i=0;i<Request.Cookies.Count; i++)
{
colCookies.Add(Request.Cookies[i]);
}
注意:从Request.Cookies集合中迭代获得的有意义的信息只有HasKeys、Name和Value属性。其他的都显示了不正确的信息。
例如:Expires总显示最小日期。 浏览器不与页面请求交互这些额外的属性。
使用Request.Cookies集合时,非常重要的一点是,理解For ... Each 循环返回的值和For...Next循环返回的值不同。
如果用For...Each循环迭代Request.Cookies集合,返回的是Cookie的名称。
如果用For...Next循环迭代该集合,返回的是HttpCookie类的实例。