我在电子邮件字段中使用此代码:
[required] [DataType(DataType.EmailAddress)] [Display(Name = "Email address")] public string Email { get; set; }
[DataType(DataType.EmailAddress)]不起作用(在不在客户端的服务器上不进行验证).
我不确定是否应该自己实现自定义属性,或者我可以使用MVC 3附带的属性.
我还阅读了一些额外的扩展,例如
http://nuget.org/packages/DataAnnotationsExtensions.MVC3
你能告诉我吗?
解决方法
您只需使用[EmailAddress]即可使用常用的DataAnnotations库
using System.ComponentModel.DataAnnotations; [required] [EmailAddress] public String Email { get; set; }
也仅供参考,这是此验证的正则表达式版本:
[RegularExpression(@"^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$",ErrorMessage = "Email is not valid")] public String Email {get; set;}
祝你好运!