将类对象发送到异常处理

时间:2016-04-04 09:40:54

标签: c# asp.net-web-api exception-handling

我想在Web API中实现自定义异常处理。

我能够实现一些初始实现,但是我想将类对象传递给异常以显示所有属性。像

    class error
    {
      int error_code
      string error_message
      string API
    }

当发生某些错误时,它应该显示json,如

{
"error_code": 0,
"error_message":"Either Your are not authorized or you don't have any project yet.",
"API": "save data"
}

此代码仅显示消息

throw new HttpResponseException(
                       Request.CreateErrorResponse(HttpStatusCode.NotFound, message));

任何建议,

由于

1 个答案:

答案 0 :(得分:1)

您只需要将对象作为CreateResponse方法的输入。生成错误响应,如下所示,

return Request.CreateResponse(HttpStatusCode.BadRequest, error, 
    new System.Net.Http.Headers.MediaTypeHeaderValue("application/json"));

Web API将自动j您传递您传递的error对象 在执行此操作之前,请确保在error对象中设置必要的值 希望这可以帮助。

修改
因为您要生成异常,所以将HttpStatusCode设置为BadRequest而不是NotFound。这更合适。