更长的域名扩展和ASP.NET MVC验证

时间:2016-08-01 10:06:33

标签: c# asp.net asp.net-mvc asp.net-mvc-4

客户抱怨无法注册我们的ASP.NET MVC网站,因为他的电子邮件如下:

name.surname@innovation.world 

这是标准的ASP.NET MVC RegisterModel

public class RegisterModel
{
    [Required]
    [Display(Name = "User name")]
    public string UserName { get; set; }

    [Required]
    [DataType(DataType.EmailAddress)]
    [Display(Name = "Email")]
    [RegularExpression(@"^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,4})$", ErrorMessage = "Email must be valid")]
    public string Email { get; set; }

    ...
}

如何更改正则表达式以考虑这些新的更长域名扩展名?

感谢。

1 个答案:

答案 0 :(得分:0)

我很确定你可以通过使用以下网站来解决这个问题:http://regexr.com/

说,我自己并不熟练使用正则表达式,但我使用上面的网站来解决你的问题。要扩展检查,您只需更新表达式末尾的 {2,4} 即可。尝试 {2,6} 。这适用于“世界”TLD,但最近可能有更好的正则表达式用于电子邮件检查。