我正在尝试调试一些代码,因为类在调用时会抛出异常 代码是:
public TrackingStrategy1(string Name, RobotGeometry geometry)
{
trackSystem = new TrackSystem(geometry, Name);
}
调用(在同一个项目中):
public TrackSystem(RobotGeometry geometry, string Name)
{
finder = new FindModel(geometry); //breakpoint inserted here fails
finder.InitModel();
finder.useGPU = false;
}
我得到异常'找不到方法:TrackSystem.FindModel..ctor(RobotGeometry)。但是,此时插入的断点不会被击中。如果我注释掉新行,我会得到下一行的相同异常。
在解决方案中包含的另一个项目中引用了FindModel,我已多次重新引用该项目,然后进行重建。
为什么Visual Studio不会在插入此构造函数的断点处停止?
答案 0 :(得分:0)
在加载每个类之前,Visual Studio正在检查是否存在所有外部dll方法调用 因为这是在调用构造函数之前发生的,所以永远不会调用构造函数中的断点。
在这种情况下,失败的原因是2个不同的项目引用了不同版本的FindModel - 并且在构建中使用了该项目的错误项目。