zoukankan      html  css  js  c++  java
  • Enterprise Library 3.0 体验(3):使用配置文件的Validation Application Block

    Enterprise Library 3.0 体验(3):使用配置文件的Validation Application Block

    摘要: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.完成后在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集成等新的特性

  • 相关阅读:
    [日常] Go语言圣经-命令行参数
    [日常] Go语言圣经前言
    [日常] 搭建golang开发环境
    [日常] 研究redis未授权访问漏洞利用过程
    [日常] CentOS安装最新版redis设置远程连接密码
    [日常] Apache Order Deny,Allow的用法
    [日常] 读取队列并循环发信的脚本
    [日常] 20号日常工作总结
    [日常] SinaMail项目和技术能力总结
    [日常] MySQL的预处理技术测试
  • 原文地址:https://www.cnblogs.com/jiangyuxuan/p/817563.html
Copyright © 2011-2022 走看看