A simple method to generate verification code in asp.net

高洛峰
Release: 2017-01-13 15:00:02
Original
1252 people have browsed it

The example in this article describes how asp.net simply generates verification codes. Share it with everyone for your reference, the details are as follows:

1. Create a new general processing program

namespace WebApplication1
{
 /// <summary>
 /// $codebehindclassname$ 的摘要说明
 /// </summary>
 [WebService(Namespace = "http://tempuri.org/")]
 [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
 public class Handler1 : IHttpHandler, IRequiresSessionState
 {
  public void ProcessRequest(HttpContext context)
  {
   context.Response.ContentType = "image/gif";
   //建立Bitmap对象,绘图
   Bitmap basemap = new Bitmap(100, 30);
   Graphics graph = Graphics.FromImage(basemap);
   graph.FillRectangle(new SolidBrush(Color.White), 0, 0, 100, 30);
   Font font = new Font(FontFamily.GenericSerif, 24, FontStyle.Bold, GraphicsUnit.Pixel);
   Random r = new Random();
   string letters = "ABCDEFGHIJKLMNPQRSTUVWXYZ";
   string letter;
   StringBuilder s = new StringBuilder();
   //添加随机的五个字母
   for (int x = 0; x < 5; x++)
   {
    letter = letters.Substring(r.Next(0, letters.Length - 1), 1);
    s.Append(letter);
    graph.DrawString(letter, font, new SolidBrush(Color.Black), x * 19, r.Next(0, 8));
   }
   //混淆背景
   Pen linePen = new Pen(new SolidBrush(Color.Black), 2);
   for (int x = 0; x < 6; x++)
    graph.DrawLine(linePen, new Point(r.Next(0, 99), r.Next(0, 29)), new Point(r.Next(0, 99), r.Next(0, 29)));
   //将图片保存到输出流中  
   basemap.Save(context.Response.OutputStream, ImageFormat.Gif);
   context.Session["CheckCode"] = s.ToString(); //如果没有实现IRequiresSessionState,则这里会出错,也无法生成图片
   context.Response.End();
  }
  public bool IsReusable
  {
   get
   {
    return false;
   }
  }
 }
}
Copy after login

2. Front-end code

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
 <title></title>
</head>
<body>
 <form id="form1" runat="server">
 <div>
  <asp:TextBox ID="txtCode" runat="server"></asp:TextBox>
  <img id="imgCode" alt="看不清?点击换一张" src="Handler1.ashx" style="cursor:pointer" onclick="this.src=this.src+&#39;?&#39;" /><br />
  <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
 </div>
 </form>
</body>
</html>
Copy after login

I hope this article will be helpful to everyone asp.net Programming helps.

For more articles on how to simply generate verification codes in asp.net, please pay attention to the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!