ASP.NET MVC模型状态验证屏蔽邮件
本文关键字:屏蔽 验证 状态 NET MVC 模型 ASP | 更新日期: 2023-09-27 18:01:15
我有一个email属性的模型,如下所示:
[Required]
[EmailAddress]
[Display(Name = "Email")]
public string Email { get; set; }
然后我想显示这个视图作为myemail在example。com。因此,在我将模型传递给视图之前,我格式化了电子邮件。
我的问题是,当它被张贴回来后,一些变化,ModelState。IsValid现在会失败,因为它不是一个合适的电子邮件格式。即使我在调用ModelState之前将电子邮件重新格式化为myemail@example.com。
我该怎么做呢?
我有2个选项,首先,删除属性EmailAddress,所以它将被视为字符串。其次,使用这个ModelState.Remove("Email")。第二个将删除所需的验证,我认为。
因此,在我将模型传递给视图之前,我格式化了电子邮件。
在这种情况下,不要直接格式化Email
属性,而是在你的模型中有另一个属性(非必需/可选),比如public string FormattedEmail { get; set; }
,并使用该属性来保存格式化的电子邮件,并在你的视图中使用相同的