在asp.net web api中不会触发Application_Error
发布时间:2020-12-16 04:06:14 所属栏目:asp.Net 来源:网络整理
导读:如何在ASP.NET WebAPI应用程序中触发Application_Error?我现在遇到的错误是当我们通过NInject解析控制器并且失败时它将不会进入Application_Error并且我们无法记录错误,因为我们正在进行Application_Error中的全局日志记录. 我们还有一个用于处理错误的全局
如何在ASP.NET WebAPI应用程序中触发Application_Error?我现在遇到的错误是当我们通过NInject解析控制器并且失败时它将不会进入Application_Error并且我们无法记录错误,因为我们正在进行Application_Error中的全局日志记录.
我们还有一个用于处理错误的全局过滤器,但只有在找到控制器时才触发,但由于我们失败了,我们实例化控制器,我们不会通过任何过滤器. 那么我如何捕获异常,为什么尝试创建处理响应的控制器呢? 解决方法
ASP.Net Web API有自己的异常处理程序,您可以覆盖它并从那里重新抛出异常,以便在Application_Error中处理它
public class MyExceptionHandler : IExceptionHandler { public virtual Task HandleAsync(ExceptionHandlerContext context,CancellationToken cancellationToken) { ExceptionDispatchInfo.Capture(context.Exception).Throw(); return Task.CompletedTask; } } 您还需要将MyExceptionHandler类添加到Web API服务. httpConfiguration.Services.Replace(typeof(IExceptionHandler),new MyExceptionHandler()); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 从ASP.net Web服务返回大量数据时有哪些好的做法?
- asp.net-mvc – 我应该在数据库中的URL中存储空格吗?如果是
- asp.net-mvc-3 – 将AuthorizeAttribute应用于控制器类并同
- asp.net-mvc – 发现MVC项目中是否使用views / partials
- ASP.NET页面间传值总结
- 使用asp.net C#从代码隐藏中读取HTML元素
- asp.net – 如何将Web应用程序项目转换为类库项目
- asp.net-mvc-3 – mvc3 – 在不同的区域使用部分视图
- .NET Core中Object Pool的简单使用
- asp.net-mvc – 处理MVC中的无效URL
推荐文章
站长推荐
热点阅读