Microsoft Enterprise Library 5.0 系列(三) Validation Application Block (初级)
2010-06-25 17:18
651 查看
企业库提供了一个很强大的验证应用程序模块,特点是:
可以通过配置为你的程序中特定的类来定义规则集.
是为你的类的公有属性,即对外开放的属性进行验证的.
使用企业库验证应用程序模块的优势:
有助于保持一致的验证方法。
包括大多数标准验证,包括.NET数据类型校验.
它让您可以将多个规则集具有相同的类和该类的成员.
它可以让你申请一个或多个规则集时,您验证的对象.
企业库验证应用程序模块提供了下列几种验证方法:
And CompositeValidator
ContainsCharacters Validator
Date Time RangeValidator
Domain Validator
Enum ConversionValidator
Not Null Validator
Object CollectionValidator
Object Validator
Or CompositeValidator
PropertyComparison Validator
Range Validator
Regular ExpressionValidator
Relative Date TimeValidator
String LengthValidator
Type ConversionValidator
Single MemberValidators
企业库验证应用程序模块有2种使用模式:
代码模式.
配置文件模式.
本文讲的是代码模式,配置文件模式在高级篇再介绍
下面介绍如何使用Microsoft Enterprise Library 5.0中的验证应用程序模块的代码模式.
要使用缓存应用程序模块, 需要导入相应的Dll文件,在此我们要导入的是Microsoft.Practices.EnterpriseLibrary. Validation.dll ,System.ComponentModel.DataAnnotations.dll ,并添加需要的引用:
代码
3. 运行结果:
请输入
出处:/article/4693132.html
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
可以通过配置为你的程序中特定的类来定义规则集.
是为你的类的公有属性,即对外开放的属性进行验证的.
使用企业库验证应用程序模块的优势:
有助于保持一致的验证方法。
包括大多数标准验证,包括.NET数据类型校验.
它让您可以将多个规则集具有相同的类和该类的成员.
它可以让你申请一个或多个规则集时,您验证的对象.
企业库验证应用程序模块提供了下列几种验证方法:
And CompositeValidator
ContainsCharacters Validator
Date Time RangeValidator
Domain Validator
Enum ConversionValidator
Not Null Validator
Object CollectionValidator
Object Validator
Or CompositeValidator
PropertyComparison Validator
Range Validator
Regular ExpressionValidator
Relative Date TimeValidator
String LengthValidator
Type ConversionValidator
Single MemberValidators
企业库验证应用程序模块有2种使用模式:
代码模式.
配置文件模式.
本文讲的是代码模式,配置文件模式在高级篇再介绍
下面介绍如何使用Microsoft Enterprise Library 5.0中的验证应用程序模块的代码模式.
要使用缓存应用程序模块, 需要导入相应的Dll文件,在此我们要导入的是Microsoft.Practices.EnterpriseLibrary. Validation.dll ,System.ComponentModel.DataAnnotations.dll ,并添加需要的引用:
代码
using System; using Microsoft.Practices.EnterpriseLibrary.Validation.Validators; using Microsoft.Practices.EnterpriseLibrary.Validation; using System.Collections.Generic; namespace test { class Program { static int index = 1; static void Main(string[] args) { //验证Customer类 Validator<Customer> customerValidator = ValidationFactory.CreateValidator<Customer>(); //设置Customer的CustomerName字段为null Customer myCustomer = new Customer(null); ValidationResults vr = customerValidator.Validate(myCustomer); Scan(vr); //设置Customer的CustomerName myCustomer.CustomerName = "HuangCong"; vr = customerValidator.Validate(myCustomer); Scan(vr); //创建一个日期 DateTime dt = new DateTime(1988, 01, 01); //创建一个日期验证器 Validator<DateTime> v1 = new DateTimeRangeValidator(DateTime.Parse("2009-01-01"), DateTime.Parse("2010-01-01")); vr = v1.Validate(dt); Scan(vr); dt = new DateTime(2009, 5, 5); vr = v1.Validate(dt); Scan(vr); /* 其他的验证类还有如下这些,大家可以自己实验: And Composite Validator Contains Characters Validator Date Time Range Validator Domain Validator Enum Conversion Validator Not Null Validator Object Collection Validator Object Validator Or Composite Validator Property Comparison Validator Range Validator Regular Expression Validator Relative Date Time Validator String Length Validator Type Conversion Validator Single Member Validators 参考网站:http://msdn.microsoft.com/en-us/library/ff664694%28v=PandP.50%29.aspx */ } public class Customer { //Not Null Validator 验证器,验证该属性不能为空值 [NotNullValidator] public string CustomerName; public Customer(string customerName) { this.CustomerName = customerName; } } private static void Scan(ValidationResults vr) { Console.WriteLine("测试{0}:", index++); if (!vr.IsValid) { Console.WriteLine("出错"); } else { Console.WriteLine("正确"); } Console.WriteLine("---------------------------------------"); } } }
3. 运行结果:
请输入
出处:/article/4693132.html
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
相关文章推荐
- Microsoft Enterprise Library 5.0 系列教程(一) : Caching Application Block (初级)
- Microsoft Enterprise Library 5.0 系列教程(二) Cryptography Application Block (初级)
- Microsoft Enterprise Library 5.0 系列(三) Validation Application Block (高级)
- Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (高级)
- 黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (初级)
- Microsoft Enterprise Library 5.0 系列(三) Validation Application Block (初级)
- Microsoft Enterprise Library 5.0 系列(五) Data Access Application Block
- Microsoft Enterprise Library 5.0 系列(十) Configuration Application Block
- Microsoft Enterprise Library 5.0 系列教程(九) Policy Injection Application Block
- Microsoft Enterprise Library 5.0 系列(十) Configuration Application Block
- 黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (初级)
- Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (初级)
- Microsoft Enterprise Library 5.0 系列(二) Cryptography Application Block (高级)
- Microsoft Enterprise Library 5.0 系列(一) Caching Application Block (高级)
- Microsoft Enterprise Library 5.0 系列(三) Validation Application Block (初级)
- Microsoft Enterprise Library 5.0 系列(七) Exception Handling Application Block
- Microsoft Enterprise Library 5.0 系列教程(五) Data Access Application Block
- Microsoft Enterprise Library 5.0 系列教程(六) Security Application Block
- Microsoft Enterprise Library 5.0 系列(五) Data Access Application Block
- Microsoft Enterprise Library 5.0 系列(二) Cryptography Application Block (高级)