ASP.NET產生n位不同的驗證碼

來源:互聯網
上載者:User

//產生隨機數函數中從strchar 數組中隨機抽取
//字母區分大小寫
//參數n為產生隨機數的位元,一般取四位
public string RandomNum(int n) //
{
 string strchar = "0,1,2,3,4,5,6,7,8,9" ;
 string[] VcArray = strchar.Split(',') ;
 string  VNum = "" ;//由於字串很短,就不用StringBuilder了
 int temp = -1 ;    //記錄上次隨機數值,盡量避免產生幾個一樣的隨

機數
 //採用一個簡單的演算法以保證產生隨機數的不同
 Random rand =new Random();
 for ( int i = 1 ; i < n+1 ; i++ )
 {   
  if ( temp != -1)
  {
   rand =new Random(i*temp*unchecked((int)

DateTime.Now.Ticks));
  }   
  //int t =  rand.Next(35) ;
  int t=rand.Next(10);
  if (temp != -1 && temp == t)
  {
   return RndNum( n);
  }
  temp = t  ;
  VNum += VcArray[t];
  }
 return VNum ;//返回產生的隨機數
}
產生隨機數後,將值賦值給一個Label控制項,然後改一下Label背景的顏色,OK了

謝謝閱讀!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.