处理Type.InvokeMember内部异常很好

时间:2009-07-24 12:18:13

标签: c# .net reflection

我有一些代码在Type上调用InvokeMember方法。这很好,但是如果在被调用的成员中发生异常,则调试跳转到我调用InvokeMember的位置,而不是内部异常。

是否有可能解决这个问题,以便代码按预期进行调试?

2 个答案:

答案 0 :(得分:3)

是的,这是可能的。在Visual Studio中按Ctrl-Alt-E以显示“异常”对话框。选中该框以打破引发的公共语言运行时异常(不仅仅是用户未处理的异常)。现在调试你的代码,你会发现它在你的反射调用方法中打破了。

答案 1 :(得分:-2)

实际上这是不可能的,因为反射类以不同于您期望的方式调用方法。它是非常间接的,如果您实际运行调试器,您会看到在库文件中执行的不同代码行,您将无法理解它们的任何值。