我的理解是提出一个错误信号应该记录我的错误或点击自定义HandleErrorWithELMAHAttribute类(取自这个example),但它没有。
我正在为有问题的控制器使用HandleErrorWithElmah装饰器。错误记录在控制器中未处理的异常时起作用(我明确地调用Logexception而不使用example的第二个代码块中提到的条件)。但是用于处理错误的错误信令功能让我感到困惑。错误信号如何工作...是否应该执行除Logging之外的其他操作...如果是这样,我如何使用它来记录我处理的异常?
这是我用来表示处理错误的代码
ErrorSignal.FromCurrentContext().Raise(new Exception("Some Handled Error"));
以下是我在网络配置中设置的摘要
<configSections>
<sectionGroup name="elmah">
<section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah" />
<section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah" />
<section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah" />
<section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler, Elmah" />
</sectionGroup>
</configSections>
<elmah>
<security allowRemoteAccess="yes" />
<errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="Log" />
</elmah>
<httpHandlers>
<add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
</httpHandlers>
<httpModules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
</httpModules>
答案 0 :(得分:3)
我正在使用Elmah和.NET MVC,并且提出Elmah异常程序可以为我工作。我可能在这里抓着吸管,但是从Elmah网站this page上的第四条评论中看到,Web.config中包含了几行,而不是上面的示例。
可能你只是没有在你的片段中包含这些行,但我认为无论如何我都会把它扔出去