asp.net-mvc – mvc [DataType(DataType.EmailAddress)没有验证

我在电子邮件字段中使用此代码
[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;}

祝你好运!

相关文章

这篇文章主要讲解了“WPF如何实现带筛选功能的DataGrid”,文...
本篇内容介绍了“基于WPF如何实现3D画廊动画效果”的有关知识...
Some samples are below for ASP.Net web form controls:(fr...
问题描述: 对于未定义为 System.String 的列,唯一有效的值...
最近用到了CalendarExtender,结果不知道为什么发生了错位,...
ASP.NET 2.0 page lifecyle ASP.NET 2.0 event sequence cha...