언어/C#

[.net core] Bad Request 처리

no500 2022. 2. 24. 13:22
#startup.cs
#ConfigureServices

services.PostConfigure<ApiBehaviorOptions>(options =>
{
    //options.SuppressModelStateInvalidFilter = true;
    options.InvalidModelStateResponseFactory = context =>
    {
        var problemDetails = new ApiResponse
        {
            Succeeded = false,
            Message = context.ModelState.Values.SelectMany(x => x.Errors).Select(x => x.ErrorMessage).FirstOrDefault()
        };

        return new BadRequestObjectResult(problemDetails)
        {
            ContentTypes = { "application/problem+json", "application/problem+xml" }
        };
    };
});