在生成随机数后,设置为
Session["RandomNumber"] = 产生的数字然后我在登陆界面取Session["RandomNumber"]的值,取得的只是上一次产生的数字。很疑惑,到底怎么回事?

解决方案 »

  1.   

    不可能哦。 你存在cookie里试试。
      

  2.   

    具体代码贴出来
    主要是生成验证码给session赋值  以及验证验证码的代码
      

  3.   

     这个是存在一个类里面的       
            string strValidate = "";
            string[] source ={ "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" };
            string code = "";
            for (int i = 0; i < 4; i++)
            {
                code += source[rndNum.Next(0, source.Length)];
            }
            strValidate = code.ToString();
            Session["RandomNumber"] =strValidate ;
    下面是在登陆页:
            if (!IsPostBack)
            {
                yzmimg.ImageUrl = "/fb/RandomNumber.aspx";//这个是验证码图片地址
                ddd.Text = Session["RandomNumber"].ToString();取session值
            }
      

  4.   

    yzmimg.ImageUrl = "/fb/RandomNumber.aspx";//这个是验证码图片地址 
                ddd.Text = Session["RandomNumber"].ToString();取session值 为什么要在这里取验证码值啊,应该是提交后进行比较吧
      

  5.   


       if (!IsPostBack) 
            { 
                yzmimg.ImageUrl = "/fb/RandomNumber.aspx";//这个是验证码图片地址 
                ddd.Text = Session["RandomNumber"].ToString();取session值 
            } 
    首次加载改为
                yzmimg.ImageUrl = "/fb/RandomNumber.aspx";//这个是验证码图片地址 
                ddd.Text = Session["RandomNumber"].ToString();取session值 
      

  6.   

    你把yzmimg.ImageUrl = "/fb/RandomNumber.aspx"
    直接写在html上面,<img src="/fb/RandomNumber.aspx" />然后验证代码写在button的事件里面if (输入的验证码= Session["RandomNumber"].ToString())
    {
      //开始验证具体的用户名,密码
    }
     
    把你的pageload里面那两句去掉          
      

  7.   

    朋友,我早试过了,一样的!写完代码后
    把ddd.Text = Session["RandomNumber"].ToString();取session值
    放在page-load,会提示说”未将对象引用到实例“
    然后我放到下面的代码后就没事了,之后我再放到page-load里,就正常显示了。
      

  8.   


    这个只是为了看session值跟验证码是不是一样
    结果发现老是比验证码慢一拍