ASP.NET生成验证码的方法
更新时间:2020年05月27日 16:29:14 作者:南 墙
这篇文章主要为大家详细介绍了ASP.NET生成验证码的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了ASP.NET生成验证码的具体代码,供大家参考,具体内容如下
首先,添加一个一般处理程序
注释很详细了,有不懂的欢迎评论
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Web;
using System.Web.SessionState;
namespace Project_Practice
{
/// <summary>
/// Handler1 的摘要说明
/// </summary>
public class Handler1 : IHttpHandler,IRequiresSessionState
{
public void ProcessRequest(HttpContext context)
{
//选取的颜色
Color[] colors = { Color.White };
//通过Bitmap构造Image
Image img = new Bitmap(100, 60);
//Graphics绘画Image
Graphics graphics = Graphics.FromImage(img);
Random random = new Random(DateTime.Now.Millisecond);
//验证码的四位数
int charNum1 = random.Next(‘0’, ‘9’ + 1);
int charNum2 = random.Next(‘0’, ‘9’ + 1);
int charNum3 = random.Next(‘0’, ‘9’ + 1);
int charNum4 = random.Next(‘0’, ‘9’ + 1);
//把生成的随机数变成字符串,通过char进行转换
string validCode = string.Format($”{(char)charNum1}{(char)charNum2}{(char)charNum3}{(char)charNum4}”);
//放进Session进行存储,记得继承接口,否则疯狂报空指针
context.Session[“verification_Code”] = validCode;
//字体的大小和类别
Font font = new Font(“宋体”, 24);
//随机的颜色
Brush brush1 = new SolidBrush(colors[random.Next(0, colors.Length – 1)]);
//DrawString的四个参数,第一个是要写的字符,第二个是字体,第三个是颜色,第四个是坐标x,y
graphics.DrawString(((char)charNum1).ToString(), font, brush1, 7, -3);
Brush brush2 = new SolidBrush(colors[random.Next(0, colors.Length – 1)]);
graphics.DrawString(((char)charNum2).ToString(), font, brush2, 26, -9);
Brush brush3 = new SolidBrush(colors[random.Next(0, colors.Length – 1)]);
graphics.DrawString(((char)charNum3).ToString(), font, brush3, 50, 0);
Brush brush4 = new SolidBrush(colors[random.Next(0, colors.Length – 1)]);
graphics.DrawString(((char)charNum4).ToString(), font, brush4, 70, -7);
//保存,格式
context.Response.ContentType = “image/jpeg”;
img.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
//释放资源
graphics.Dispose();
img.Dispose();
}
public bool IsReusable
{
get
{
return false;
}
}
}
}
一个web窗体
<%@ Page Language=”C#” AutoEventWireup=”true” CodeBehind=”verification_Code.aspx.cs” Inherits=”Project_Practice.verification_Code” %>
<!DOCTYPE html>
<html xmlns=”www.w3.org/1999/xhtml”>
<head runat=”server”>
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″/>
<title></title>
</head>
<body>
<form id=”form1″ runat=”server”>
<div>
<asp:Image ID=”Image1″ runat=”server” ImageUrl=”~/Handler1.ashx” />
</div>
</form>
</body>
</html>
效果图
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持华域联盟。
您可能感兴趣的文章:asp.net 验证码生成和刷新及验证ASP.net 验证码实现代码(C#)asp.net(C#) 生成随机验证码的代码Asp.net(C#)实现验证码功能代码asp.net 简单验证码验证实现代码ASP.NET MVC验证码功能实现代码ASP.NET 实现验证码以及刷新验证码的小例子ASP.NET中的无刷新验证码的开发(完整代码)asp.net 图片验证码的HtmlHelperasp.net ajax实现无刷新验证码
ASP.NET
验证码
相关文章
使用PowerShell .Net获取电脑中的UUID这篇文章主要介绍了使用PowerShell .Net获取电脑中的UUID 的相关资料,需要的朋友可以参考下 2016-06-06
.NET生成水印更好的方法实例代码这篇文章主要给大家介绍了关于.NET中生成水印更好的方法,文中通过示例代码介绍的非常详细,对大家学习或者使用.NET具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧 2019-07-07
ASP.NET 2.0服务器控件开发之复杂属性ASP.NET 2.0服务器控件开发之复杂属性… 2006-09-09
MVC4制作网站教程第一篇 绪论MVC4制作网站教程第一篇,创建项目,网站配置,从最基本的操作入手,帮助大家了解MVC4网站入门制作的过程,感兴趣的小伙伴们可以参考一下 2016-08-08
Asp.Mvc 2.0实现用户注册实例讲解(1)这篇文章主要介绍了Asp.Mvc 2.0如何实现用户注册,实例讲解很细致,注册功能是每个网站必不可少的组成部分,感兴趣的的朋友可以参考下 2015-08-08
.NET Core WebApi中如何实现多态数据绑定实例代码这篇文章主要给大家介绍了关于.NET Core WebApi中如何实现多态数据绑定的相关资料,文中通过示例代码介绍的非常详细,并给出来完整的实例代码,需要的朋友可以参考借鉴,下面来一起学习学习吧 2018-08-08
VS2015在升级到Update2之后运行Cordova项目异常的解决方案这篇文章主要介绍了VS2015在升级到Update2之后运行Cordova项目异常的解决方案的相关资料,需要的朋友可以参考下 2016-07-07
读取纯真IP数据库的公用组件接口QQWry.NET这是一个读取纯真IP数据库的公用组件接口,我是通过luma的《纯真IP数据库格式详解》了解了纯真IP数据库数据格式,并且基于网络上的一个IPLocation.dll源码的基础改编而来 2013-06-06
详解ASP.NET Core 2.0 路由引擎之网址生成(译)这篇文章主要介绍了详解ASP.NET Core 2.0 路由引擎之网址生成(译),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 2017-11-11
ASP.NET Core学习之使用JWT认证授权详解这篇文章主要给大家介绍了关于ASP.NET Core学习之使用JWT认证授权的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用ASP.NET Core具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧 2020-08-08
最新评论

评论(0)