【问题标题】:Email Validation for html helper - ASP.Nethtml 帮助程序的电子邮件验证 - ASP.Net
【发布时间】:2017-07-02 19:01:07
【问题描述】:

我有一个 Asp.Net MVC 项目。我正在尝试为 editorFor 进行电子邮件验证。

根据我研究的方式 [在这个答案中:How to apply input which has a type email to to HTML Helper in Asp.net MVC3 Razor 和更多...] 这样做是这样的:

 @Html.EditorFor(model => model.Email, new { htmlAttributes = new { @class = "form-control", @dir="ltr", @type = "email"} })

唯一的问题是,这确保我有这个模式: 姓名@gmail 但它不能确保 @ - [name@gmail.com] 之后的电子邮件地址中有 .

关于我能做什么的任何想法? 谢谢

【问题讨论】:

  • 你在链接的帖子上阅读this 答案了吗?
  • 删除 new { @type = "email" } 并将 [EmailAddress] 属性添加到您的属性

标签: html asp.net-mvc validation html-helper


【解决方案1】:

像这样在你的模型中使用它:

添加using System.ComponentModel.DataAnnotations;

[Display(Name = "Email Address")]
        [EmailAddress]
        [RegularExpression("^[_A-Za-z'`+-.]+([_A-Za-z0-9'+-.]+)*@([A-Za-z0-9-])+(\\.[A-Za-z0-9]+)*(\\.([A-Za-z]*){3,})$",ErrorMessage="Enter proper email")]
        [Required]
        [DataType(DataType.EmailAddress, ErrorMessage = "Format not proper of email address")]
        public string Email { get; set; }

这将正确验证我正在使用的电子邮件地址。

【讨论】:

  • 我尝试按照@Sorangwala 所说的做,但它给了我一个错误 - 在模式中,\ 字符下有一条红线,当我将鼠标悬停在它上面时,它说:无法识别转义序列。当我尝试运行程序时,我得到一个“编译错误”:无法识别的转义序列
猜你喜欢
  • 1970-01-01
  • 2011-11-14
  • 2013-10-25
  • 2016-11-23
  • 1970-01-01
  • 2014-03-03
  • 2016-09-09
  • 2013-04-07
  • 2010-09-16
相关资源
最近更新 更多