博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Enterprise Library 3.0 体验(3):使用配置文件的Validation Application Block
阅读量:5976 次
发布时间:2019-06-20

本文共 1667 字,大约阅读时间需要 5 分钟。

摘要:Enterprise Library 3.0 January 2007 CTP版发布了,这次发布的版对于Validation Application Block有了很大的改进,包括对配置工具的支持,与ASP.NET以及WinForm的集成等新的特性。在上一篇文章中我介绍了如何使用Attribute来实现验证,文本看一下如何利用配置文件来使用Validation Application Block

 
1
.新建一个控制台应用程序,仍然使用我在中用过的User实体类,这跟我们编写的普通业务对象并没有任何区别:
public
 class User
{
    private String _name;
 
    private int _age;
 
    public String Name
    {
        get { return _name; }
        set { _name = value; }
    }
 
    public int Age
    {
        get { return _age; }
        set { _age = value; }
    }
}
2
.先对项目编译,添加配置文件App.config,在VS.NET2005中打开,默认会用Enterprise Library配置工具打开,新建Validation Application Block,如下图所示:
3
.3.完成后在Validation Application Block上右键菜单中新建类型,就是我们需要验证的类:
在弹出的类型选择对话框中,加载我们刚才编译后的.EXE文件,就可以找到User类,在实际中我们会把它们单独放在一个项目中,这时只需要加载对应的DLL文件就可以了。
4
.在User类上新建验证规则的集合,可以在属性对话框中修改验证规则的名称,对于每个类我们可以建立多个验证规则:
5
.在规则上就可以新建我们需要验证的属性了,这里我们建立NameAge两个属性,也可以建立对FieldMethod的验证:
6
.在属性上创建验证器,在当前版本中,Validation Application Block提供了大量了验证器供我们使用,如下图所示:
7
.对于每个验证器,可以通过属性对话框中的MessageTemplate属性来设置验证通不过时的提示信息:
8
.前面说过可以建立多个验证规则,对于每个类型,可以为它设置一个默认的验证规则:
9
.编写简单的验证代码,仍然使用Validation外观类,我们可以使用
ValidateFromConfiguration
方法来实现验证:
class
 Program
{
    static void Main(string[] args)
    {
        User user = new User();
        user.Name = "TerryLee";
        user.Age = 210;
 
        ValidationResults results = Validation.ValidateFromConfiguration<User>(user);
 
        foreach (ValidationResult result in results)
        {
            Console.WriteLine(String.Format("Key: {0},Message: {1}", result.Key.ToString(), result.Message));
        }
 
        Console.Read();
 
    }
}
简单的使用配置文件的Validation Application Block验证就完成了。
在后面的文章中我会介绍到Validation Application Block如何与ASP.NETWinForm集成等新的特性
J
注意本文使用的版本是Enterprise Library 3.0 January 2007 CTP版本。
本文转自lihuijun51CTO博客,原文链接:
http://blog.51cto.com/terrylee/67650
 ,如需转载请自行联系原作者
你可能感兴趣的文章
航电OJ-2544最短路
查看>>
CF772E Verifying Kingdom
查看>>
雨林木风U盘装系统综合教程
查看>>
V-by-one
查看>>
让我欲罢不能的node.js
查看>>
python3基础知识学习记录
查看>>
10年.NET老程序员推荐的7个开发类工具
查看>>
C#核心编程结构(2)
查看>>
rename设计思想(Perl版)
查看>>
第二次冲刺 第七天
查看>>
矩阵之矩阵乘法(转载)
查看>>
Python _内置函数3_45
查看>>
cf-Igor In the Museum (dfs)
查看>>
数据之路 Day4 - Python基础4
查看>>
使用openCV打开USB摄像头(UVC 小米micro接口)
查看>>
Luogu P3577 [POI2014]TUR-Tourism
查看>>
Scrapy框架的基本使用
查看>>
ActionResult,PartialViewResult,EmptyResult,ContentResult
查看>>
关于泛型类,泛型接口,泛型函数
查看>>
@pathvariable和@RequestParam的区别
查看>>