我在登陆页面设置了cookie :
                     HttpCookie acookie = new HttpCookie("last_");
                    acookie.Value = UIN;
                    acookie.Expires = DateTime.Now.AddDays(1);
                    Response.Cookies.Add(acookie);UNI是我前面定义的字符串然后登陆后其他页面访问cookie : 
if (Request.Cookies["last_"] != null)
        {
            string userId = Request.Cookies["last_"].Value;
             string[] lstParm = userId.Split('|');
            string role = lstParm[4].ToString();
           Set_Role(role);
        }我在VS2005里面直接调试没问题, 能够读取,但是  把网站一放上服务器   为什么就读不出了呢    还需要设置什么嘛?

解决方案 »

  1.   

    我将UIN 换成  “xxxx”  也是一样 VS直接调试能取到cookie的值  编译后放服务器上访问就取不到cookie
      

  2.   

    晕呢,我上传到iis上,水印效果也不出来,
    不知道是不是iis的问题,可能有什么别设置,
      

  3.   

    我刚刚试过了,,我的怎么可以啊,
     protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.Cookies["last_"] != null)
            {
                string userId = Request.Cookies["last_"].Value;
                Response.Write("OK");
                this.Panel1.Visible = false;
            }
        }    protected void Button1_Click(object sender, EventArgs e)
        {
            HttpCookie acookie = new HttpCookie("last_");
            acookie.Value = this.TextBox1.Text;
            acookie.Expires = DateTime.Now.AddDays(1);
            Response.Cookies.Add(acookie);
            Response.Redirect("Default.aspx");
        }
      

  4.   

    我在本机调试的时候 设置断点 查看 cookie的值   赋值 到取值 都是很正常的,但是编译后放到服务器上就是取不到 cookie的值
      

  5.   

    给cookie值加上编码或解码试试
      

  6.   

    你把本地当服务器看一下,也就是不在vs中调试,你把它发布到本台电脑上的iis中运行,看一下会不会这样子,如果不会的话,那估计就是服务器那边的设置问题了
      

  7.   

     问题解决了 谢谢 各位 
    我把赋值方式 改成  Response.Cookies["last_"].Value = UIN;       读取代码不变 就可以读出了。
    具体原因现在还不知道