无法调试间接引用的项目(Visual Studio 2015 Update 3)

时间:2017-03-10 12:46:53

标签: c# debugging visual-studio-2015

我有以下设置: 我的解决方案有3个项目,项目A(Xamarin.Android项目)参考项目B(PLC),项目B参考项目C(也是PLC)。当我调试项目A时,项目C中的所有断点都被忽略,如果我想从项目C(从项目B调用)进入一个方法,它只是简单地跨过它。

如果我直接从项目A引用项目C并且不做其他任何改变,那么它可以完美地运行,但我不希望项目A知道项目C.

我还尝试删除所有bin和obj文件夹,以及所有.suo和.user文件,再次删除和添加引用,它没有帮助。

这之前肯定有用,但我最近更新到Visual Studio 2015的Update 3,因为我在Update 3中遇到了烦人的错误,在Update 3中修复了。我不完全确定这是什么原因为什么它不再起作用,但我无法想到其他任何事情。

1 个答案:

答案 0 :(得分:0)

  

不知道为什么,但它再次起作用。我想制作截图   杰克想要的东西,它突然起作用了。我不知道是什么   它改变了,因为我改变了“没有”,但我们都知道这些   “我什么都没做”,所以我猜有些东西,但不知道   什么,因为我暂时放弃了这件事而没有   继续尝试解决它...我认为我所做的只是直接添加   从A到C的引用来调试问题,然后再次将其删除   问题解决后。对不起我造成的麻烦。

很高兴知道即使我们找不到真正的原因,它现在运作良好,但我提供了为什么它有这个问题的可能原因或者有相同问题的社区成员的一些故障排除步骤。

一般来说,断点没有命中问题:

(1)我们必须确保符号实际上是从调试模式窗口加载的,例如,您可能会收到No PDB或不从Output窗口加载的警告。因此,我们需要在T​​OOLS-> Options-> Debugging-> Servers下启用Microsoft Symbols Server。

(2)另一个可能的原因是参考项目不使用与.NET Framework版本相同的平台目标或调试目标X86 / X64 /任何CPU。

(3)或者它与文件路径有关,我的意思是通常Debug从项目输出路径加载了汇编文件,我们必须确保它确实有那个汇编文件(也许不复制或要求)管理员。)

无论如何,既然它现在运作良好,我只是发布可能的原因。祝你今天愉快。