微软的网页上有这么一句:
不能直接删除用户计算机中的 Cookie。但是,可以通过将 Cookie 的到期日期设置为过去的日期,让用户的浏览器来删除 Cookie。当用户下一次向设置该 Cookie 的域或路径内的页发出请求时,浏览器将确定该 Cookie 已到期并将其移除。请注意这一句:当用户下一次向设置该 Cookie 的域或路径内的页发出请求时,浏览器将确定该 Cookie 已到期并将其移除。
也就是说,我如果在a页面里用
             HttpCookie user = HttpContext.Current.Request.Cookies["userinfo"];
             user.Expires = DateTime.Now.AddDays(-1);
             HttpContext.Current.Response.Cookies.Add(user);
来设置cookie过期,然后在同页面马上判断cookie是否存在的话,那么永远不可能得到cookie不存在的结果?
我现在发现就是这样  if (HttpContext.Current.Request.Cookies["userinfo"] == null),这个结果永远是false,怎么才能让这个判断的结果为true呢?

解决方案 »

  1.   

    Global.asax应用程序启动之后就写入cookie就有了吧
      

  2.   

    能详细说说吗?
    我在a页面
      HttpCookie user = HttpContext.Current.Request.Cookies["userinfo"];
       user.Expires = DateTime.Now.AddDays(-1);
       HttpContext.Current.Response.Cookies.Add(user);
    然后调用一次Global.asax,然后再去判断if (HttpContext.Current.Request.Cookies["userinfo"] == null)吗?
      

  3.   


    这个是在服务器端删除cookie,但是我是要判断客户端下的cookie
      

  4.   

    HttpCookie cook = HttpContext.Current.Request.Cookies["userinfo"];
                if (cook != null)
                {
                    cook.Expires = new DateTime(1970, 1, 1);
                    HttpContext.Current.Response.Cookies.Add(cook);
                }
                HttpContext.Current.Request.Cookies.Remove("userinfo");清除cookie
      

  5.   

    DateTime.Now.AddDays(-1);
    过期时间 -1天?HttpContext.Current.Response.Cookies.Add(user);然后在写入??  这个你也能创建Cookies?
      

  6.   


    HttpCookie user = HttpContext.Current.Request.Cookies["userinfo"];
     先获取了这个cookie啊