相信大家都会遇到这个问题的,而且在我的项目经验中,发生主这个问题的原因特别多,本文把我遇到过的情况都记录下,供大家参考。
1、运行调试时模式不对,应该选Debug才能进入断点,如果选择Release是不能的
注意项目属性里的配置也选择成Debug
2、对于多项目引用(或者运行的是exe主程序,源码做为子程序被动态反射加载的情况)要检查确认主程序与源码的生成目录是否一致,避免运行的和源码生成的不是一个目录
3、解码方案-配置管理器-活动解决方案平台,有时这儿没有下拉也会导致程序不能进入断点或不能正常调试
在解决方案上点右键--》进入配置管理器
点新建x64,然后再新建X86共两个平台
根据你的项目情况,选择具体平台,一般选择AnyCPU就行
四、 项目间引用太多,注意引用生成目录,并尝试清理解决方案,重新生成
在多个项目并存并且相互引用的时候出现,并且每个项目下有类的文件夹时,这样容易导致命名空间互相引用的错误,详细检查一下类的命名空间的正确与否,肯定可以解决这个问题的。特别是项目引用外部的类时,更要注意命名空间的名字是否符合项目引用需求。
还有一种情况是多个项目之间相互引用导致的错误,此时在每次修改之后需要清理一次解决方案并重新生成解决方案,然后编译即可。因此,在多项目的解决方案中,尽量避免交叉引用,循环引用,尽量单一引用。
同一个错误,多种不同的原因,本文仅写了我遇到过的原因和解决方案,欢迎大家补充。
有一个确定能不能进入断点的方法是:程序启动后,能进入命中的断点,应该是个实心园点,如果有共色感叹号,就表示不能命中,请检查原因