我写Cookies后,马上去取,为什么总是要隔一次才能取一次。
程序是这样的:private void Button1_Click(object sender, System.EventArgs e)
{
if(TextBox1.Text != "")
{
Response.Cookies["cookiesTest"].Value = TextBox1.Text;
Label1.Text = Request.Cookies["cookiesTest"].Value;
}
}当第一次单击 Button1 时,Label1 的 Text 属性设置是对的,Label1 的 Text 属性设置成了 TextBox1 中输入的值!第二次单击 Button1 时,Label1的 Text 属性不变,还是第一次TextBox1中输入的值。第三次单击时,Label1 的Text 属性为第二次TextBox1中输入的值!第四次,Label1的Text属性又不变,为第三TextBox1中输入的值。第五次,又变了。如此反复,隔一次才能取得值!,这是为什么呀!????取得总是上次

解决方案 »

  1.   

    你先跟踪一下,看看各个值都是什么。看看什么时候值是变的。找出来到底是text.box的值隔一次才变,还是cookie隔一次才变。
      

  2.   

    有可能第二次处理时,TextBox1.Text还是保存第一次的值。你用下面代码跟进去看看
    private void Button1_Click(object sender, System.EventArgs e)
    {
    string strA;
    if(TextBox1.Text != "")
    {
    strA = TextBox1.Text;
    Response.Cookies["cookiesTest"].Value = TextBox1.Text;
    strA = Request.Cookies["cookiesTest"].Value;
    Label1.Text = Request.Cookies["cookiesTest"].Value;
    }
    }
    看看strA两次的值是多少
      

  3.   

    TO :  HJ_34(刺桐游子)    两次的 strA 的值情况为:第一次单击是相同。以后就不同,
      比如,我第一次单击时,TextBox1输入FFFF,第二单击时,TextBox1输入BBBB,
      则,第一个 strA 的值为 BBBB,第二个strA 的值却为 FFFF,也就是上一次保存的Cookie值,而不是当前这次保存的Cookie值!
      

  4.   

    不行的,
    别的机器上也是一样!
    感觉是不是Cookie的设置有问题???