当前位置:3d开机号和试机号今天 > 博客园牛 >黄聪:Microsoft Enterprise Library 5.0 系列教程三 Validation Application Block 初级

黄聪:Microsoft Enterprise Library 5.0 系列教程三 Validation Application Block 初级

  作者:凌空11腿   来源: 博客园-lonelyxmas  
原文: 黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (初级)

3d开机号和试机号今天 www.jk1z4.cn

企业库提供了一个很强大的验证应用程序???特点是:

  • 可以通过配置为你的程序中特定的类来定义规则集.
  • 是为你的类的公有属性,即对外开放的属性进行验证的.

使用企业库验证应用程序??榈挠攀?/strong>:

  • 有助于保持一致的验证方法。
  • 包括大多数标准验证,包括.NET数据类型校验.
  • 它让您可以将多个规则集具有相同的类和该类的成员.
  • 它可以让你申请一个或多个规则集时,您验证的对象.

企业库验证应用程序??樘峁┝讼铝屑钢盅橹し椒?/strong>:

  • 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

企业库验证应用程序??橛?/strong>2种使用模式:

  1. 代码模式.
  2. 配置文件模式.

本文讲的是代码模式,配置文件模式在高级篇再介绍

下面介绍如何使用Microsoft Enterprise Library 5.0中的验证应用程序??榈拇肽J?

  1. 要使用缓存应用程序??? 需要导入相应的Dll文件,在此我们要导入的是Microsoft.Practices.EnterpriseLibrary. Validation.dll ,System.ComponentModel.DataAnnotations.dll ,并添加需要的引用:

 

添加引用:

usingMicrosoft.Practices.EnterpriseLibrary.Validation.Validators;
usingMicrosoft.Practices.EnterpriseLibrary.Validation;
usingSystem.Collections.Generic;

  2. 测试:

代码
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

参考网站:
//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. 运行结果:

相关阅读:

来源:(微信/QQ:420434200,微信公众号:www.jk1z4.cn)
       欢迎分享本文,转载请保留出处!

       【原文阅读】://www.cnblogs.com/lonelyxmas/p/3581991.html
没有了
  • 【在行动】渝北用大数据讲好“数字中国”故事 三年后将现“独角兽” 2018-12-02
  • 和公公结婚来规避“不能入学风险”福建龙岩回应 2018-11-29
  • 重庆“8D迷宫”楼走红  网友:住户能找到自己家吗 2018-11-12
  • 你所面临的除了再没利用价值的收回狗粮与制裁,还有国际的反腐制裁,反邪恶制裁。 2018-11-09
  • 我相信“交警雨中护送高考生”是真,“交警雨中护送高考生”反被该高考生家长投诉是假。 2018-11-09
  • 其实啊也不奇怪,菜做好了先来一份尝尝味道于是提前开吃了。 2018-10-27
  • 太原出台人才落户新规 子女父母均可随迁 2018-10-18
  • 3.4米剧毒眼镜王蛇闯入农户家中赖着不走 2018-10-18
  • “亲信干政”案核心人物崔顺实一审被判20年监禁 2018-10-13
  • 【学习时刻】清华大学周绍杰:坚定不移地贯彻落实新发展理念 2018-10-07
  • 迟子建《候鸟的勇敢》:白山黑水的苍凉,渐行渐近的夕阳 2018-10-07
  • 习近平与人民日报的10个故事 2018-09-30
  • 生姜祛寒止痛可缓解身体不适 但也要注意食用禁忌 2018-09-30
  • 国宝级黄腹角雉住进三清山 2018-09-24
  • 高清:创意十足!杭州萌娃毕业照留下成长足迹 2018-09-12
  • 690| 553| 909| 293| 846| 258| 245| 84| 694| 684|