ELMAH - 传递变量和其他文本?

时间:2010-03-25 12:13:59

标签: c# logging elmah

我刚开始玩ELMAH。

想知道,有没有办法在抛出异常时传递信息,例如变量值或其他一些文本?。

目前我正在使用此: ErrorSignal.FromCurrentContext()提高(E);

5 个答案:

答案 0 :(得分:4)

您可以在自定义消息中包含异常对象,如下所示:

ErrorSignal.FromCurrentContext().Raise(new Elmah.ApplicationException(Message,ex));

http://blog.omniaconnect.net/2009/07/30/using-a-static-class-for-logging-exceptions-using-elmah/

答案 1 :(得分:1)

变量取决于异常的上下文?或者它是全局的(会话值?) 如果它取决于上下文,您可以尝试捕获并使用自定义消息将异常重定向到Elmah。

编辑:代码段 ... .Raise(新例外(“您的自定义消息带有变量值”));

答案 2 :(得分:0)

这样做的一种方法是将elmah扩展一点,以便复制会话。概述了基本实施here。这个功能似乎没有在1.2(仍然是测试版)中实现,但我可能错了。

答案 3 :(得分:0)

我抛出一个包含数据的新异常,使用innerexception参数来包含原始异常。

答案 4 :(得分:0)

你确实觉得自己基本上没有把字符串传递给elmah了,但这就是当你了解它时的异常(至少大多数程序员如何处理它们)。

我所做的只是创建伪造对象的自定义消息,有点像:

客户端安装等上的Class.MethodName发生错误,然后注入现有的异常。