正则表达式(22)——Attribute标记(3)——练习:正则表达式校验Attribute

编写正则表达式验证器,在属性上根据需要添加RegexValidatorAttribute。这种用法在ASP.Net MVC中用的非常多。

class Customer
{
     [RegexValidator(@"^\S+@\S+$")]
     public string Email{get;set;}
     [RegexValidator(@"^\d{6}$")]
     public string Postcode{get;set;}
     [RegexValidator(@"^\d{15}$|^\d{18}$")]
     public string IdNumber{get;set;}
}

编写Validate方法,在Validate方法中会对标记了RegexValidator的属性采用指定的正则表达式进行数据校验。步骤:

1、开发RegexValidatorAttribute,提供保存正则表达式的Pattern属性,以及一个接受正则表达式的构造函数。用AttributeUsage标记RegexValidatorAttribute只能添加到属性上。

2、 Validate方法中取得obj对应的Type对象,遍历type.GetProperties()所有属性,如果属性是string类型,并且定义了RegexValidator,取得RegexValidator对象,读取对象的Pattern对象多和正则表达式。

3、获得属性的值string value = prop.GetValue(obj, null) as string,用正则表达式进行校验。

4、写一个“ASP.Net”WinForm程序“表单生成器”,browser.DocumentText= html

browser.DocumentText= html
 [TableName("T_Persons")]
    class Person
    {
        [ColumnName("FName")]
        public string Name { get; set; }

        [ColumnName("FAge")]  
        public int Age { get; set; }
    }

NHibernate

Person p1 =......;

db.Insert(p1);

5、带数据校验Attribute。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值