【发布时间】:2016-09-23 16:50:37
【问题描述】:
我需要一种方法来在一个地方处理和记录 web api 中发生的所有异常。 我重写了 ExceptionLogger 和 ExceptionHandler 的方法,但是代码中断并且从不触发处理机制。
如果我将控制器更改为必须使用相同的 API 方法,这会导致另一个错误:
[RoutePrefix("api/Ads")]
public class AdsController : ApiController
{
public IHttpActionResult Get()
{
return Ok(Ad.GetAds());
}
public IHttpActionResult Get(object name)
{
return Ok();
}
}
处理程序将捕获错误:
在这种情况下,错误是:
Multiple actions were found that match the request:
ExceptionLogger 和 ExceptionHandler 是否只捕获更高级别的 web api 引起的错误?以及我应该如何处理所有错误,异常过滤器是否也是必须添加的解决方案?
【问题讨论】:
标签: c# error-handling exception-handling asp.net-web-api2 action-filter