Mar*_*ark 27 .net c# asp.net-mvc data-annotations asp.net-mvc-4
在允许发布表单之前,有没有办法使用数据注释来比较两个表单字段(例如确认电子邮件地址)是否相同?
例如.正则表达式数据注释可以使用匹配函数来引用ViewModel中的另一个属性吗?
dov*_*ove 46
public string EmailAddress {get; set;}
[Compare(nameof(EmailAddress), ErrorMessage = "Emails mismatch")]
public string VerifiedEmailAddress { get; set; }
And*_*rei 15
作为一个可能的选项自我验证:
使用方法Validate实现接口IValidatableObject,您可以在其中放置验证代码.
public class TestModel : IValidatableObject
{
    public string Email{ get; set; }
    public string ConfirmEmail { get; set; }
    public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
    {
        if (Email != ConfirmEmail)
        {
            yield return new ValidationResult("Emails mismatch", new [] { "ConfirmEmail" });
        }
    }
}
请注意:这只是服务器端验证.
| 归档时间: | 
 | 
| 查看次数: | 33795 次 | 
| 最近记录: |