ASP.NET中使用验证码技术
由于验证码技术中服务器程序需要创建验证码图片,里面用到了图形编程,因此本节课程仍然是C#发现之旅的图形编程系列教程。
根据验证码的原理,我们使用C#在ASP.NET中实现了验证码的功能。
checkimage.aspx
首先根据上节课程的内容,我们要创建一个图片服务页面,专门用于提供包含验证码文本的图片,为此我们建立一个 checkimage.aspx 的页面。其HTML代码很简单,只有一行,不输出任何内容。在其Page_Load方法中就有创建验证码图片的过程。
// 创建一个包含随机内容的验证码文本
System.Random rand = new Random();
int len = rand.Next(4 , 6 );
char[] chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ".ToCharArray();
System.Text.StringBuilder myStr = new System.Text.StringBuilder();
for( int iCount = 0 ; iCount < len ; iCount ++ )
{
myStr.Append( chars[ rand.Next( chars.Length )]);
}
string text = myStr.ToString();
// 保存验证码到 session 中以便其他模块使用
this.Session["checkcode"] = text ;
Size ImageSize = Size.Empty ;
Font myFont = new Font("MS Sans Serif" , 20 );
// 计算验证码图片大小
using( Bitmap bmp = new Bitmap( 10 , 10 ))
{
using( Graphics g = Graphics.fromImage( bmp ))
{
SizeF size = g.MeasureString( text , myFont , 10000 );
ImageSize.Width = ( int ) size.Width + 8 ;
ImageSize.Height = ( int ) size.Height + 8 ;
}
}
// 创建验证码图片
using( Bitmap bmp = new Bitmap( ImageSize.Width , ImageSize.Height ))
{
// 绘制验证码文本
using( Graphics g = Graphics.fromImage( bmp ))
{
g.Clear( Color.White );
using( StringFormat f = new StringFormat())
{
&
相关文档:
首先添加一个模板列,内容如下
<asp:TemplateField HeaderText="操作">
<ItemTemplate>
<div onclick="return confirm('您确定要删除吗?')">
  ......
public class t3 : System.Web.UI.Page
{
private string str;//字符
&n ......
十、如何:读取 Calendar Web 服务器控件中的选定日期
第一个示例显示当前选定的日。第二个示例显示所有选定的日期,可以是单个日、周或月。
// Example 1
Label1.Text = Calendar1.SelectedDate.ToShortDateString();
// Example 2
String s = "";
foreach(DateTime d in Ca ......
1. 简述 private、 protected、 public、 internal 修饰符的访问权限。
答 . private : 私有成员, 在类的内部才可以访问。
protected : 保护成员,该类内部和继承类中可以访问。
public : 公共成员,完全公开,没有访问限制。
internal: 在同一命名空间内可以访问。
2 .列举ASP.NET 页面之间传递值的几种方式 ......