我使用[EmailAddress]属性来验证服务器端的电子邮件.但是,当我发送无效的电子邮件地址时,我会收到400状态代码响应而没有消息,而不是进入我的操作方法并看到ModelState错误.
调试输出只是说抛出了Microsoft.AspNetCore.Mvc.SerializableError.
请问有人解释一下吗?
模型:
public class LoginVm
{
[Required(ErrorMessage = "Email cannot be empty.")]
[EmailAddress(ErrorMessage = "Email has an incorrect format.")]
public string Email { get; set; }
[Required(ErrorMessage = "Password cannot be empty.")]
public string Password { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
行动:
[AllowAnonymous]
[HttpPost]
public IActionResult Authenticate([FromBody]LoginVm loginVm)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
if (loginVm.Email != "maksym@no.no" || loginVm.Password != "password")
{
return NotFound("There is no such user.");
}
return Ok();
}
Run Code Online (Sandbox Code Playgroud)
调试输出: