【发布时间】:2019-03-29 17:20:49
【问题描述】:
我正在处理 asp.netcore-2.2 错误,但我仍然从 Response 获取 ErrorMessage 详细信息
我有一个登录和注册方法,其中包含所需的用户名、密码和注册所需的密码长度在 8 到 4 个字符之间,问题是我收到了登录方法的预期或处理错误消息,当我收到验证错误时我用空的用户名和密码注册。
我在 ConfigureApiBehaviorOptions 中添加了这段代码:
options.SuppressModelStateInvalidFilter = true;
我也试过这个选项:
options.SuppressUseValidationProblemDetailsForInvalidModelStateResponses = true;
但它不起作用。
这是我的注册 DTO:
using System.ComponentModel.DataAnnotations;
namespace DatingApp.Api.Dtos
{
public class UserForRegisterDto
{
[Required]
public string Username { get; set; }
[Required]
[StringLength(8, MinimumLength= 4, ErrorMessage= "password between 4 and 8 charracters")]
public string Password { get; set; }
}
}
我预计会出现此错误消息:
“4 到 8 个字符之间的密码”
但我在更改 ConfigureApiBehaviorOptions 之前得到了这个:
"title": "出现一个或多个验证错误。", “状态”:400, "traceId": "0HLJIO56EGJEV:00000001"
如果我使用ConfigureApiBehaviorOptions,还有一个带有错误详细信息的完整表格。
【问题讨论】:
标签: asp.net-core-2.2