asp.net-mvc – 澄清在ASP.NET MVC中使用ELAMH
我目前正在使用mvc4和vs2012,我已经安装了mvc.elmah nugget.
我做了什么 ? 最初我没有写任何代码,我的异常记录在ELMAH中. 后来我决定使用MVC HandleError来处理Application Exceptions并添加过滤器 filters.Add(new HandleErrorAttribute()); 现在我在过滤器中调试,看到我有2个过滤器,一个用于ELMAH HandleErrorAttribute和MVC HandleErrorAttribute! 我看到了这个优秀的链接https://stackoverflow.com/a/5936867/1481690,它谈到了使用ErrorSignal来处理应用程序异常 但是我没有使用ErrorSignal,但我的例外情况仍被ELMAH捕获? 如果我使用 if (context.ExceptionHandled) ErrorSignal.FromCurrentContext().Raise(context.Exception); 我的例外记录两次. 我的问题如下 >我需要使用2个过滤器(ELMAH和MVC)吗? 目前正在做什么 添加过滤器 filters.Add(new HandleErrorAttribute()); 和覆盖(将来处理Ajax错误) public class HandleErrorAttribute : System.Web.Mvc.HandleErrorAttribute { public override void OnException(ExceptionContext context) { base.OnException(context); } 这是足够的还是什么是好的做法?我没有提高ErrorSignal,因为它记录了两次. 我没有使用任何try.catch,因为我使用下面的行并希望我的异常得到处理. base.OnException(context); } 只是想确保我正确的方式! 谢谢你的时间 解决方法
更新:我指出错误的包更新问题.
你不需要两者. ElmahHandleErrorAttribute继承自HandleErrorAttribute,因此使用两者都是多余的. How to get ELMAH to work with ASP.NET MVC [HandleError] attribute? 你也不需要为Elmah提出任何信号,ElmahHandleErrorAttribute会处理这个问题. 如果您正在使用Nuget的Elmah.Contrib.MVC,那么您需要的是ElmahHandleErrorAttribute. filters.Add(new Elmah.Contrib.MVC.ElmahHandleErrorAttribute()); 还有一个包在那里,我在Elmah.MVC由同一作者Elmah完成了这个错误,我正在研究这个包以找出差异是什么以及如何使用它. 更新2:好的,显然Elmah.MVC软件包内置了所有内容,并且它们使用WebActivator为您注册了几乎所有内容.所以你需要在一个全新的MVC项目上做的就是开始跟踪Elmah的错误就是安装包,然后进行编译.完成.但是,您应该在安装后检查web.config,并在AppSettings下,设置查看页面所需的角色并启用身份验证. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – ASP.NET MVC – Partial View可以有一个控制
- asp.net MVC NPOI导出excel通用
- asp.net – asp:RequiredFieldValidator使用空字段进行回发
- ASP.NET表单验证第一次不起作用
- asp.net-web-api – APIController“已执行”方法?
- asp.net-mvc – UTC时间的Hangfire CRON
- asp.net-mvc – MVC – 更改下拉列表中的默认文本
- asp.net – 如何在Web App和Windows Form Application之间进
- 在Asp.Net中启用Secure中的HTTPOnly
- asp.net – 有关iPhone网站优化的帮助
- asp.net – Razor base type / Templated Razor使
- 如何确定asp.net网址是否已被“重写”?
- 当空的asp.net时,ListView LayoutTemplate不显示
- asp.net-mvc – 我可以免费在ASP.NET MVC上开发吗
- asp.net-core – 在VS2017中为.NET CORE 2.0设置
- 当会话状态超时在asp.net mvc中完成时,如何重定向
- asp.net网站默认文件在子文件夹中
- asp.net-web-api – mvc webapi cross domain po
- asp.net-mvc – 使用自定义HTML扩展在ASP.NET MV
- asp.net – 这是什么错误?