我有Web API应用程序和我想在OnApplicationError事件中处理Global.asax 中的异常,就像我对常用的Web应用程序所做的那样。但由于某些原因,当错误抛出时,它不会触发OnApplicationError事件。我认为这是ASP.NET中Web API的默认机制。 您是否知道我是否可以在Global.asax中处理此类错误?
我找到了一个解决方案 - 我创建了一个异常过滤器属性并在那里处理异常。我只是想知道我是否可以在global.asax中做同样的事情。
答案 0 :(得分:1)
您可以在Global.asax中注册您的例外过滤器:
public class MvcApplication : System.Web.HttpApplication
{
public static void RegisterWebApiFilters(System.Web.Http.Filters.HttpFilterCollection filters)
{
filters.Add(new HandleExceptionAttribute());
}
protected void Application_Start()
{
RegisterWebApiFilters(GlobalConfiguration.Configuration.Filters);
}
}