我用的是vista系统,iis7,开发用的是vs2008,在项目中我使用到了cookie存值,在项目中用vs自带的浏览器可以很好的读出cookie,一切正常,但把项目架到iis7下,就读不出cookie了,老是报未将对象引用到实例。各位大虾们,这是怎么回事啊?

解决方案 »

  1.   

    在测试客户端上查看下有没有生成的Cookie文件
      

  2.   

    生成了
    现在我把代码贴出来,大家看看哪里错了。
    生成cookie:
     HttpCookie cooike = new HttpCookie("info");
                cooike["weather"] = weather.SelectedValue;
                cooike["danjia"] = danjia.Text;
                DateTime da = DateTime.Now;
                TimeSpan ts = new TimeSpan(10, 0, 0);
                cooike.Expires = da.Add(ts);
                Response.Cookies.Add(cooike);读取cookie:
    HttpCookie cook = Request.Cookies["info"];
                danjia.Text = cook["danjia"].ToString();
                weather.Text = cook["weather"].ToString();反正我在项目里调试,一切正常,但在iis里就失效了。。
      

  3.   

    HttpCookie cook = Request.Cookies["info"]; 
                danjia.Text = cook["danjia"].ToString(); 
                weather.Text = cook["weather"].ToString(); ===============================================cook["danjia"] 等于 null 的时候 再tostring 是会未将对象引用到实例  这个是常识.将过期时间设置长一点.断点查看Cookie是否是null
      

  4.   

    1:我的cookie已开启
    2:我的cookie不等于null
    这是我在本地找到的cookie的值:infoweather=晴&danjia=0.5192.168.1.105/10243600385920299943559146148829994272*
      

  5.   

    3:我把cookie设置的过期时间为10小时
      

  6.   

    问题补充:我用了iframe框架,在网上查了下,说好像是P3P的问题,我按照上面做了,但还是没成功。