Go homepage(回首页) Upload pictures (上传图片) Write articles (发文字帖)
The author:(作者)delvpublished in(发表于) 2014/1/10 6:24:11 ASP.NET,2.0服务器控件之实现验证控件_[Asp.Net教程]
2. 验证控件实现机制 通常情况下,使用ASP.NET 2.0的5个内置验证控件,可以满足多数应用程序的需要。然而,为了提高开发的灵活性,满足不同Web应用的需求,ASP.NET 2.0内置了一个可扩充的验证框架。该框架定义了服务器端和客户端的基本实现规则。开发人员可以使用这个可扩充的验证框架,根据应用需要设计自己的验证控件来实现新的设计规则。 (1)服务器端实现机制 并非所有的Web服务器控件都支持验证控件。可以使用验证控件进行验证的标准控件包括:TextBox、ListBox、DropDownList、RadioButtonList、HtmlInputText、HtmlInputFile、HtmlSelect和HtmlTextArea、FileUpload和HtmlInputPassword等。这些支持验证控件的控件有一个共同特征,即元数据中包含System.Web.UI.ValidationPropertyAttribute。ValidationPropertyAttribute定义了控件用于标识验证属性的元数据特性。除此之外,如果由以上控件派生的自定义控件类,需要支持验证,那么必须在控件类前定义ValidationPropertyAttribute,这样该控件才能作为验证目标控件。开发人员在实现自定义验证控件过程中,必须首先了解以上所介绍的验证目标控件内容,然后才能更好的开发控件。 为了实现自定义验证控件,ASP.NET 2.0提供了3个重要对象:(1)System.Web.UI.IValidator;(2)System.Web.UI.WebControls.BaseValidator;(3)System.Web.UI.WebControls.CustomValidator。以上三者之间联系紧密,由它们组成的验证框架具有很强的灵活性和可扩充性。IValidator接口是验证框架的基础,任何实现该接口的类都可以作为验证程序。BaseValidator是抽象基类,该类实现IValidator接口,并继承System.Web.UI.WebControls.Label控件。通常情况下,自定义验证控件都派生自该类。CustomValidator实际是一个验证控件,开发人员可以用它来添加自定义的验证逻辑。为了更好的说明验证框架,下面将逐一介绍以上3个对象。 IValidator接口的定义如下:
public interface Ivalidator{ string ErrorMessage {get; set;} bool IsValid {get; set;} void Validate();}
赞