ASP .NET登录界面用户验证码代码

//ASP .NET用户登录界面经常用到验证码代码如下
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
Label4.Text=RandomNum(4);
}
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 ;//返回生成的随机数
}
// ‘‘函数名称:RndNum 
// ‘‘函数参数:VCodeNum--设定返回随机字符串的位数 
// ‘‘函数功能:产生数字和字符混合的随机字符串 
private string RndNum(int VcodeNum) 
{ 
string Vchar = "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[] VcArray = Vchar.Split(",".ToCharArray()); //将字符串生成数组 
string VNum = ""; 
int i; 
for(i=1;i<VcodeNum;i++) 
{ 
System.Random ro = new Random(); 
double decA = ro.NextDouble(); 
VNum = VNum + VcArray[Convert.ToInt32(35*decA)]; 
} 
// For i=1 to VcodeNum 
// Randomize 
// VNum=VNum & VcArray(Int(35*Rnd)) ‘‘数组一般从0开始读取,所以这里为35*Rnd 
// Next 
return VNum; 
}
//ASP .NET登录界面用户验证码代码,网络上搜集整理测试

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。