有人成功地使用Castle MonoRail和ELMAH了吗?
我们正在使用一些资源来向用户呈现友好的错误消息,但是如果我们这样做,异常永远不会到达ELMAH,因为MonoRail救援拦截了它们。
理想情况下,我们希望用户看到救援,但要将异常记录到ELMAH中。
有什么想法/建议吗?
干杯,
杰伊。
发布于 2009-03-06 19:17:26
在看了Macka发布的链接后,我编写了这个简单的单轨异常处理程序:
public class ElmahExceptionHandler : AbstractExceptionHandler {
public override void Process(IRailsEngineContext context) {
ErrorSignal.FromCurrentContext().Raise(context.LastException);
}
}然后我在web.config的单轨部分注册了它:
<monorail>
<extensions>
<extension type="Castle.MonoRail.Framework.Extensions.ExceptionChaining.ExceptionChainingExtension, Castle.MonoRail.Framework"/>
</extensions>
<exception>
<exceptionHandler type="MyNamespace.ElmahExceptionHandler, MyAssembly"/>
</exception>
...
</monorail>就是这样。
发布于 2008-11-10 11:07:09
在Google Groups上发帖之后,看起来Atif可能给我指明了正确的方向。
你可能需要检查一下ELMAH中的错误信号。它是为这样的场景而设计的:您希望通过ELMAH的管道传递异常,即使它正在被处理/接受。以下是开始使用错误信号的一些提示:
-Atif
https://stackoverflow.com/questions/275810
复制相似问题