创建验证码的代码为:
public class validatecode : System.Web.UI.UserControl
{ private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
this.CreateCheckCodeImage(GenerateCheckCode());
}
private string GenerateCheckCode()    

int number; 
char code; 
int  Icode;
string checkCode = String.Empty; 
System.Random random = new Random(); 
for(int i=0; i<5; i++) 

number = random.Next(); 
if(number % 2 == 0) 
{
Icode = (char)(0+(int)(number % 10)); 
checkCode += Icode.ToString();
}
else 
{
code = (char)(65+(int)(number % 26)); 
checkCode += code.ToString(); 
}

Response.Cookies.Add(new HttpCookie("CheckCode", checkCode)); 
return checkCode; 

private void CreateCheckCodeImage(string checkCode) 

if(checkCode == null || checkCode.Trim() == String.Empty) 
return; 
System.Drawing.Bitmap image = new System.Drawing.Bitmap((int)Math.Ceiling((checkCode.Length * 20)), 30); 
Graphics g = Graphics.FromImage(image); 
try 

//生成随机生成器 
Random random = new Random(); 
//清空图片背景色 
g.Clear(Color.White); 
//画图片的背景噪音线 
for(int i=0; i<25; i++) 

int x1 = random.Next(image.Width); 
int x2 = random.Next(image.Width); 
int y1 = random.Next(image.Height); 
int y2 = random.Next(image.Height); 
g.DrawLine(new Pen(Color.Silver), x1, y1, x2, y2); 

Font font = new System.Drawing.Font("Arial", 18, (System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic)); 
System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle (0,0,image.Width, image.Height), Color.Blue , Color.DarkRed, 1.2f, true); 
g.DrawString(checkCode, font, brush,2, 2);  //画图片的前景噪音点  for(int i=0; i<100; i++) 

int x = random.Next(image.Width); 
int y = random.Next(image.Height);   
image.SetPixel(x, y, Color.FromArgb(random.Next())); 

  
//画图片的边框线  g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1); 
System.IO.MemoryStream ms = new System.IO.MemoryStream(); 
image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif); 
Response.ClearContent(); 
Response.ContentType = "image/Gif"; 
Response.BinaryWrite(ms.ToArray()); 
}  
finally 

g.Dispose(); 
image.Dispose(); 

}