ASP.net验证码
快过年,好久没写什么东西了。不知道最近是太忙了,还是自己有点懒,写些自己积累的东西。都是些最基本的应用,和大家分享下。
验证码在很多地方多用到,网上各种形形色色的代码页很多了,我就是打发点时间写写了。
原理:通过GUI+生成有四个数字的图片,将四个数字存放到Session中,然后通过验证你输入的验证码和Session中的是否一致,达
到验证的效果。
扩展下,这里是四个数字的,如果需要那种汉字,英文字母还有数字夹杂在一起的那种我没有做过,不知道是通过程序去生成汉字和英
文字母。但是如果让我做的话,可以建立一个库(文件,数据库,还是最简单的一个数组)存放些汉字,英文字母。随机抽取出来生成。
就可以实现了。还有就是这个生成出来的图片是50*22像素的的,如果你要生成出更大或者小点的,需要修改下程序。没有做到通用是
我的罪过。。。
生成验证码图片:
CodeImg.aspx.cs文件
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CodeImg.aspx.cs" Inherits="Purdue.CRM.Web.inc.CodeImg" %>
CodeImg.cs文件
using System;
using System.Collections;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
namespace Purdue.CRM.Web.inc
{
public partial class CodeImg : System.Web.UI.Page
{
public static String realCode="";
protected void Page_Load(object sender, EventArgs e)
{
//调用函数将验证码生成图片
this.CreateCheckCodeImage(GenerateCheckCode());
}
private string GenerateCheckCode()
{
//产生四位的随机字符串
int number;
char code;
string checkCode = String.Empty;
System.Random random = new Random();
for (int i = 0; i < 4; i++)
{
number = random.Next();
code = (char)('0' + (char)(number % 10));
checkCode += code.ToString();
相关文档:
ASP.NET的配置是从machine.config文件开始的,通常情况下这个文件被放在"c:\Windows\Microsoft.NET\Framework\v2.0.50727\Config"目录中,这文件中定义了ASP.NET所支持的配置文件的各个部分,包括ASP.NET工作进程的配置,以及注册一些能够提供诸如属性配置(profiles)、成员资格(membership)、基于角色的安 ......
这篇教程探讨ASP.NET MVC控制器,控制器action和action result。完成此教程后,你会懂得控制器如何被用来控制访问者与ASP.NET MVC网站的交互方式。
理解控制器
MVC 控制器负责对ASP.NET MVC网站的请求作出回应。每一个浏览器请求都被映射到一个特定的控制器。例如,想象你在浏览器地址栏输入以下URL:
http://localhost/P ......
http://www.microsoft.com/china/msdn/events/webcasts/shared/webcast/Series/MVC.aspx
http://www.cnblogs.com/chsword/archive/2009/03/11/zd_mvc1.html
jQuery框架学习:http://www.zz68.net/WebDesign/js/200907/0H611P2009.html
ASP.NET 中的设计模式之MVC篇:http://www.cnblogs.com/superhasty/archive/2005/06/08 ......