public void Configure(ApiBehaviorOptions options) { if (options == null) { throw new ArgumentNullException(nameof(options)); } options.InvalidModelStateResponseFactory = GetInvalidModelStateResponse; IActionResult GetInvalidModelStateResponse(ActionContext context) { var errorDetails = _errorDescriptionFactory.CreateErrorDescription( context.ActionDescriptor, context.ModelState); var result = (errorDetails is ModelStateDictionary modelState) ? new BadRequestObjectResult(modelState) : new BadRequestObjectResult(errorDetails); result.ContentTypes.Add("application/problem+json"); result.ContentTypes.Add("application/problem+json"); return(result); } }
public void Configure(ApiBehaviorOptions options) { if (options == null) { throw new ArgumentNullException(nameof(options)); } options.InvalidModelStateResponseFactory = GetInvalidModelStateResponse; IActionResult GetInvalidModelStateResponse(ActionContext context) { var errorDetails = _errorDescriptionFactory.CreateErrorDescription( context.ActionDescriptor, new ValidationProblemDetails(context.ModelState)); return(new BadRequestObjectResult(errorDetails) { ContentTypes = { "application/problem+json", "application/problem+xml", }, }); } }