【发布时间】:2019-03-11 20:22:39
【问题描述】:
我知道对于其他框架和语言,这个问题被问了好几次,但我想知道,一旦模型验证在 ASP.NET Core 2.1 中出现第一个错误,如何才能真正停止它?
[Required(ErrorMessage = Email.requiredErrorMessage)]
[DataType(DataType.EmailAddress, ErrorMessage = Email.formatErrorMessage)]
[StringLength(Email.maximumLength, MinimumLength = Email.minimumLength, ErrorMessage = Email.rangeErrorMessage)]
[EmailExists(ErrorMessage = Email.doesNotExistsMessage)]
public string email { get; set; }
[Required(ErrorMessage = ConfirmationCode.requiredErrorMessage)]
[RegularExpression(ConfirmationCode.regularExpression, ErrorMessage = ConfirmationCode.formatErrorMessage)]
public string confirmationCode { get; set; }
以上代码是 API 模型验证,在发出 Patch 请求时,我收到以下响应:
"email":[
"This email does not exist in database"
],
"confirmationCode":[
"Confirmation code format is invalid"
]
}
当模型验证确保数据库中不存在电子邮件时,我不希望继续进行模型验证,只需返回该错误并且不再继续验证。
【问题讨论】:
标签: c# asp.net-core-webapi asp.net-core-2.1 model-validation