protected void Page_Load(object sender, EventArgs e)
    {
        string checkCode = CreateRandomCode(4);
        Session["CheckCode"] = checkCode;
        CreateImage(checkCode);
    }
    //产生4个随即字符
    private string CreateRandomCode(int codeCount)
    {
        string allChar = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,W,X,Y,Z";
        string[] allCharArray = allChar.Split(',');  //以","为分割符把allChar拆分成数据;
        string randomCode = "";
        int temp;
        Random rand = new Random();
        for (int i = 0; i < codeCount; i++)
        {
            int t = rand.Next(35);
            temp = t;
            randomCode += allCharArray[t];
        }
        return randomCode;
    }

解决方案 »

  1.   

    protected void Page_Load(object sender, EventArgs e)
      {
      string checkCode = CreateRandomCode(4);//获取验证码文本
      Session["CheckCode"] = checkCode;//将验证码保存到Session,以便其他页面调用
      CreateImage(checkCode);//根据验证码文本生成验证码图片
      }
      //产生4个随即字符
      private string CreateRandomCode(int codeCount)
      {
      string allChar = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,W,X,Y,Z";
      string[] allCharArray = allChar.Split(',');  //以","为分割符把allChar拆分成数据;
      string randomCode = "";//用来保存生成随机验证码
      int temp;//此句无用
      Random rand = new Random();//定义rand,用来生成随机数
      for (int i = 0; i < codeCount; i++)
      {
      int t = rand.Next(35);//生成0-35的随机数
      temp = t;//无用,可去掉
      randomCode += allCharArray[t];//随机数对应的字符添加到randomCode 
      }
      return randomCode;//返回验证码
      }
      

  2.   

    string checkCode = CreateRandomCode(4);//获取随机验证码
      Session["CheckCode"] = checkCode;//保存到sesion
      CreateImage(checkCode);//生成验证码图片
    Random rand = new Random();//生成随机数Random r = new Random(DateTime.Now.Millisecond); 
      for (int i = 0; i < codeCount; i++)
      {
      int t = rand.Next(35);//0-35
      temp = t;
      randomCode += allCharArray[t];
      }