WebApi2中所有类型的异常的全局异常处理程序

时间:2018-06-22 17:54:29

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

我正在WebApi上进行异常处理,因此我需要通过添加HttpStatusCodeErrorBody向我的客户发送错误消息。

我已经尝试过,并且找到了一些有用的解决方案,例如ExceptionFiltersHttpResponseMessage和一些全局异常处理程序,但是由于我正在进行可行性研究,所以我没有深入研究它们。

其中一些,例如ExceptionFilters在获取异常之前/之后运行,它们对于记录目的很有用。但是所有这些都只是将我正在运行的代码扔到了运行时异常中。

当我运行throw new ...表达式时,我花了一天的时间查找如何收集和消除VisualStudio运行时错误;但我无法找到想要的东西。

当我选择HttpResponseMessage作为我的ActionMethods的返回类型时,这是产生错误并将其发送回客户请求的非常简单的方法。 但是当我想选择另一种方式时,例如:

 public User GetAllUsers()
 {
     ... //Some Codes
     {
        throw new HttpResponseException(HttpStatusCode.Accepted);
     }
     else { ... }
 }

它只会使我遇到运行时错误(我认为,这只是一个警告,因为我只需要按F5键即可摆脱服务器端Bump :)))毕竟,我将在Client-上看到我生成的错误消息-辅助应用程序。

我不想将HttpResponseMessage用作我的ActionMethods的输出类型,因为我负责开发前端和后端,并且要花点时间才能检查“这种ActionMethod的类型是什么?”

我该怎么做?

0 个答案:

没有答案