惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Proofpoint News Feed
博客园_首页
WordPress大学
WordPress大学
大猫的无限游戏
大猫的无限游戏
有赞技术团队
有赞技术团队
阮一峰的网络日志
阮一峰的网络日志
Hugging Face - Blog
Hugging Face - Blog
博客园 - 【当耐特】
酷 壳 – CoolShell
酷 壳 – CoolShell
Y
Y Combinator Blog
Vercel News
Vercel News
The GitHub Blog
The GitHub Blog
T
The Blog of Author Tim Ferriss
云风的 BLOG
云风的 BLOG
博客园 - 司徒正美
Engineering at Meta
Engineering at Meta
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
J
Java Code Geeks
Stack Overflow Blog
Stack Overflow Blog
N
Netflix TechBlog - Medium
Martin Fowler
Martin Fowler
宝玉的分享
宝玉的分享
G
Google Developers Blog
Last Week in AI
Last Week in AI

博客园 - 店小2£

name 开始 SPS 之旅 IE不能為讀(written)問題解決(轉載) 技術文章[轉載] 我们新疆好地方 OWC Regsvr32命令,今天剛學到的,很好的東西 SQL Function 通過VS.NET調用 SQL 的DTS 這個,我比較滿意 Good Tech 童年的回憶 有趣的事情 鬱悶致死 關於糾錯這個問題之我見 轉載: “37度男人”正走俏 轉載 + 隨感 WebApplicationPackaged 無病呻吟
在ASP.NET中生成随机验证码[轉載]
店小2£ · 2006-05-29 · via 博客园 - 店小2£

在ASP.NET中生成随机验证码方法很简单,首先新建一个.aspx文件,进入Html视图,将所有Html标记删掉,只留下最上面的一行Page指令,如新建一个名为code.aspx的文件,后台代码如下:

 1using System;
 2using System.Collections;
 3using System.ComponentModel;
 4using System.Data;
 5using System.Drawing;
 6using System.Web;
 7using System.Web.SessionState;
 8using System.Web.UI;
 9using System.Web.UI.WebControls;
10using System.Web.UI.HtmlControls;
11
12namespace Code
13{
14    /// <summary>
15    /// 此页面只用于生成4位验证码。
16    /// </summary>

17    public class Code : System.Web.UI.Page
18    {
19    
20        private void Page_Load(object sender, System.EventArgs e)
21        {
22            // 在此处放置用户代码以初始化页面
23            if(!Page.IsPostBack)
24            {
25                this.GenImg(this.GenCode(4));
26            }

27        }

28
29        //产生随机字符串
30        private string GenCode(int num)
31        {
32            string[] source={"0","1","2","3","4","5","6","7","8","9",
33                                "A","B","C","D","E","F","G","H","I","J","K","L","M","N",
34                                "O","P","Q","R","S","T","U","V","W","X","Y","Z"}
;
35            string code="";
36            Random rd=new Random();
37            for(int i=0;i < num;i++)
38            {
39                code += source[rd.Next(0,source.Length)];
40            }

41            return code;
42        }

43
44        //生成图片
45        private void GenImg(string code)
46        {
47            Bitmap myPalette=new Bitmap(60,20);//定义一个画板
48            
49            Graphics gh=Graphics.FromImage(myPalette);//在画板上定义绘图的实例
50
51            Rectangle rc=new Rectangle(0,0,60,20);//定义一个矩形
52
53            gh.FillRectangle(new SolidBrush(Color.Silver),rc);//填充矩形
54            gh.DrawString(code,new Font("宋体",16),new SolidBrush(Color.Gray),rc);//在矩形内画出字符串
55
56            myPalette.Save(Response.OutputStream,System.Drawing.Imaging.ImageFormat.Jpeg);//将图片显示出来
57
58            Session["ValidateCode"]=code;//将字符串保存到Session中,以便需要时进行验证
59
60            gh.Dispose();
61            myPalette.Dispose();
62        }

63        Web 窗体设计器生成的代码
83    }

84}

85

然后在要使用验证码的地方添加一个image标记,将图片路径指到code.aspx即可。