1. 程式人生 > >Custom Email Attribute在客戶端不起作用原因

Custom Email Attribute在客戶端不起作用原因

con tcl messages 原因 attribute clas nat a-z ble

原文發布時間為:2011-07-16 —— 來源於本人的百度文章 [由搬家工具導入]

Custom Email Attribute在客户端不起作用原因,就是未实现 IClientValidatable 接口。必须实现这个接口,才可以。如下:

 

 public class EmailAttribute : RegularExpressionAttribute, IClientValidatable

    {
        public EmailAttribute()
            : base(@"^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})$")
        {

        }
        public IEnumerable<ModelClientValidationRule> GetClientValidationRules(ModelMetadata metadata, ControllerContext context)
        {
            var rule = new ModelClientValidationRegexRule(this.ErrorMessageString, base.Pattern);
            return new[] { rule };
        }
    }

http://haacked.com/archive/2009/11/19/aspnetmvc2-custom-validation.aspx

Custom Email Attribute在客戶端不起作用原因