2014-05-05 17 views
1

我有一个try-catch块。在catch块中,我想记录try块中发生异常的地方(即linke numnber)。谢谢如何找出在try-block中发生异常的地方

+0

到目前为止的努力? –

+1

什么样的“信息”?无论答案如何,你都无法得到任何有用的东西。如果你觉得你需要区分,那么你需要不止一个'catch'(并且可能不止一个'try')。 – Jon

+1

您可以阅读堆栈跟踪。 –

回答

1

您可以尝试查看堆栈对象以查看它的位置。它通常给你一个行号(与很多其他的“位”)

我用它来一般,获取调用方法的一般错误处理:

void DoThings(stacktrace se) 
{ 
se.GetFrame(0).GetMethod().ReflectedType.Name 
} 

让我调用方法的信息。

+0

根据@andgeek,它是您需要的堆栈跟踪。堆栈跟踪() –

2

你应该申请try-catch块到你不知道它会成功与否的代码(即,你是怀疑有关的代码)

当try-catch块被应用在多条线路,并且想知道在哪条线上发生了异常,我认为你需要用try-catch块来包围每一行。

否则异常消息将显示执行过程中发生的错误。