TargetInvocationException.InnerException缺少行号

时间:2019-01-07 10:57:48

标签: c#

我正在使用Invoke从动态加载的程序集中执行一些代码。出于好奇,我在调用的方法中引发了异常。它可以正常工作,我可以读取异常,但是缺少行号。

var assemblyBytes = File.ReadAllBytes(scriptPath);
// I'm using this overload to avoid blocking the dll.
var assembly = Assembly.Load(assemblyBytes); // allows to pass pdb bytes in the second argument.

var myMethod = ...

try
{
    myMethod.Invoke(null, parameters);
}
catch (TargetInvocationException e)
{
    MessageBox.Show(e.InnerException); // missing line numbers
}

动态加载的程序集是在调试模式下构建的。

任何想法为什么会发生这种情况,以及如何显示行号?

在这种情况下,我使用的是.NET Framework 4.0

1 个答案:

答案 0 :(得分:0)

将pdb字节传递给Assembly.Load起作用

相关问题