【发布时间】:2018-03-13 09:31:11
【问题描述】:
我希望能够从我的 API 返回状态代码 - 424(失败的依赖)和 422(无法处理的实体)。 我们正在使用自定义错误处理程序来处理错误响应,如下所示 -
public class ApiResponse
{
public string StatusCode { get; set; }
public string Message { get; set; }
public ApiResponse(int statusCode, string message = null)
{
StatusCode = GetDefaultMessageForStatusCode(statusCode);
Message = message;
}
private static string GetDefaultMessageForStatusCode(int statusCode)
{
switch (statusCode)
{
case 200:
return "Success.";
case 400:
return "Bad request.";
case 404:
return "Not Found.";
case 424:
return "Dependency Failure";
case 500:
return "An unhandled error occurred.";
default:
return null;
}
}
}
public class DependencyFailureResponse : ApiResponse
{
public DependencyFailureResponse(string message) : base(424)
{
Message = message;
}
}
当我从控制器调用 DependencyFailureResponse 时,我会收到“依赖失败”状态代码以及我的自定义消息。 但;正如我所说的那样 -
return BadRequest(new DependencyFailureResponse("Custom message"));
它将始终显示为 400 Bad Request
我希望能够以不显示“400 Bad Request”的方式调用它。 请帮忙!谢谢!
【问题讨论】:
标签: c# error-handling .net-core