C# 为什么我在尝试调试时偶尔会遇到断点未命中的问题?
我重新编译我的解决方案,当它在调试模式下启动时,我在断点周围收到警告,说它不会被命中 源代码文件有一个不同的副本 为什么在尝试调试时会加载多个版本的源代码C# 为什么我在尝试调试时偶尔会遇到断点未命中的问题?,c#,visual-studio,C#,Visual Studio,我重新编译我的解决方案,当它在调试模式下启动时,我在断点周围收到警告,说它不会被命中 源代码文件有一个不同的副本 为什么在尝试调试时会加载多个版本的源代码 我甚至做了一次干净的编译,但仍然得到了这个错误。Visual Studio通常非常擅长检测源代码与附加的exe或dll进程的代码签名不匹配的情况。因此,我怀疑这是两个可能的问题之一: 调试会话的平台/配置(例如debug/x64)与.exe或.dll编译体系结构不匹配。或 你认为“干净的编译”并不是真正干净的 Visual Studio知道的
我甚至做了一次干净的编译,但仍然得到了这个错误。Visual Studio通常非常擅长检测源代码与附加的exe或dll进程的代码签名不匹配的情况。因此,我怀疑这是两个可能的问题之一:
当你说你做了一个干净的编译时,确保它真的很干净(不要依赖Visual Studio的“干净”功能。并非在所有情况下都可靠。例如,如果您创建了在编译前或编译后复制内容的生成事件。请删除项目的/bin和/obj文件夹,然后重新编译。这将确保您的二进制文件始终与最新的调试代码匹配。请执行几次,然后看看是否仍然存在此问题。e在VS2019中的错误。我这样解决了
工具->选项->删除bug->常规和“要求源文件与原始版本完全匹配”取消选择该选项我得到该选项主要有两个原因:1.您尝试编译的项目已被检查为未编译(请参阅解决方案的配置)和2.您正在运行的解决方案或项目处于发布模式,未调试。您检查过吗?我还单击了工具栏中的IIS express并将其关闭…没有更改。我刚刚重新启动,现在可以工作了?删除/bin文件夹等的好提示。