网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 大学论文导航 设计下载 最新论文 下载排行 原创论文 论文源代码
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > ASP.net > 正文

asp.net验证码生成类(参考)

来源:http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/12
/**********************Created by Chen**************************

*如果你觉得本人的文章好,要引用请尊重著作人的劳动果实,说明

*出处以及原创作者,Thank you!!!   email:aishen944-sohu.com

*******************************************************************/
using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.Web.UI;
using System.Drawing.Drawing2D;
using System.IO;
namespace Validate
{
 /// <summary>
 /// 生成验证码的类
 /// </summary>
 public class ValidateNumber
 {
  public ValidateNumber()
  {
  }
  /// <summary>
  /// 验证码的最大长度
  /// </summary>
  public int MaxLength
  {
   get{return 10;}
  }
  /// <summary>
  /// 验证码的最小长度
  /// </summary>
  public int MinLength
  {
   get{return 1;}
  }
  /// <summary>
  /// 生成验证码
  /// </summary>
  /// <param name="length">指定验证码的长度</param>
  /// <returns></returns>
  public string CreateValidateNumber(int length)
  {
   int randMembers=new int[length];
   int validateNums=new int[length];
   string validateNumberStr="";
   //生成起始序列值
   int seekSeek=unchecked((int)DateTime.Now.Ticks);
   Random seekRand=new Random(seekSeek);
   int beginSeek=(int)seekRand.Next(0,Int32.MaxValue-length*10000);
   int seeks=new int[length];
   for(int i=0;i<length;i++)
   {
    beginSeek+=10000;
    seeks[i]=beginSeek;
   }
   //生成随机数字
   for(int i=0;i<length;i++)
   {
    Random rand=new Random(seeks[i]);
    int pownum=1*(int)Math.Pow(10,length);
    randMembers[i]=rand.Next(pownum,Int32.MaxValue);
   }
   //抽取随机数字
   for(int i=0;i<length;i++)
   {
    string numStr=randMembers[i].ToString();
    int numLength=numStr.Length;
    Random rand=new Random();
    int numPosition=rand.Next(0,numLength-1);
    validateNums[i]=Int32.Parse(numStr.Substring(numPosition,1));
   }
   //生成验证码
   for(int i=0;i<length;i++)
   {
    validateNumberStr+=validateNums[i].ToString();
   }
   return validateNumberStr;
  }
  /// <summary>
  /// 创建验证码的图片
  /// </summary>
  /// <param name="containsPage">要输出到的page对象</param>
  /// &

网学推荐

免费论文

原创论文

设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号