int temp = -1;
        //生成一个随机对象
        Random rand = new Random();
        //根据验证码的位数循环
        for (int i = 0; i < count; i++)
        {
            //主要是防止生成相同的验证码
            if (temp != -1)
            {
                //加入时间的刻度
                rand = new Random(i * temp * ((int)DateTime.Now.Ticks));
            }
你的temp变过了吗=。=!

解决方案 »

  1.   

    问题处在这里
    if (temp == t)
    {
           //相等的话重新生成
           return CreateValidate(count);
    }
    0-9组数,还得要求每个位不一样,你自己想下还能剩下多少种排列组合
      

  2.   

    很简单,这样就能解决了,生成的两个是不一样的。关键是给两个不相同的种子。
    protected void Page_Load(object sender, EventArgs e)
        {//这里的 / 9只是为了制造不同的种子,你可以随便处理
            Random r = new Random(System.Environment.TickCount / 9);
            Response.Write(r.Next().ToString() + ",");    }    protected void btn_submit_Click(object sender, EventArgs e)
        {
            Random r = new Random();
            Response.Write(r.Next().ToString());
        }
      

  3.   

    其实不用 new Random(i * temp * ((int)DateTime.Now.Ticks)); 的
    直接 new Random() ; 就可以