ValidationResult 发送 409 冲突状态码 ASP.NET Core Web Api
ValidationResult to send 409 conflict status code ASP.NET Core Web Api
是否可以从 System.ComponentModel.DataAnnotations
的 ValidationResult 方法发送 HttpStatusCode.Conflict(409)
默认返回 HttpStatusCode.BadRequest(400)。是否有任何可能的方法使用 ValidationResult 方法发送不同的状态代码。
由于您使用的是 asp.net 核心,因此您可以在 StartUp > ConfigureServices
中覆盖 ApiController 属性行为
services.AddControllers()
.ConfigureApiBehaviorOptions(options => {
options.InvalidModelStateResponseFactory = context =>
{
var problemDetails = new ValidationProblemDetails(context.ModelState)
{
Status = StatusCodes.Status409Conflict,
};
return new UnprocessableEntityObjectResult(problemDetails){};
}; });
是否可以从 System.ComponentModel.DataAnnotations
的 ValidationResult 方法发送 HttpStatusCode.Conflict(409)默认返回 HttpStatusCode.BadRequest(400)。是否有任何可能的方法使用 ValidationResult 方法发送不同的状态代码。
由于您使用的是 asp.net 核心,因此您可以在 StartUp > ConfigureServices
中覆盖 ApiController 属性行为services.AddControllers()
.ConfigureApiBehaviorOptions(options => {
options.InvalidModelStateResponseFactory = context =>
{
var problemDetails = new ValidationProblemDetails(context.ModelState)
{
Status = StatusCodes.Status409Conflict,
};
return new UnprocessableEntityObjectResult(problemDetails){};
}; });