【发布时间】:2014-11-13 20:57:43
【问题描述】:
VS2013, windows 8.1, windows phone 8 c# app 断点不起作用,我得到的断点目前不会被击中。没有为此文档错误加载任何符号 我需要做什么?
【问题讨论】:
-
你想打什么断点?你确定你没有将它设置在将被优化的代码行上吗?
标签: c# visual-studio-2013 breakpoints
VS2013, windows 8.1, windows phone 8 c# app 断点不起作用,我得到的断点目前不会被击中。没有为此文档错误加载任何符号 我需要做什么?
【问题讨论】:
标签: c# visual-studio-2013 breakpoints
我一直在努力解决这个问题。最后,这就是为我所做的。
选择 调试 -> 选项 -> 调试 -> 常规
勾选 启用 .NET Framework 源代码步进。
(这可能是您需要做的所有事情,但如果您像我一样,您还必须执行下面所述的操作。以下解决方案还将修复您的项目加载旧程序集/.pdb 文件的错误,尽管重建和清洁。)
选择 工具 -> 选项 -> 项目和解决方案 -> 构建和运行,
取消勾选 只在运行时构建启动项目和依赖项,
选择 Always Build 从On Run, when project are out of date 下拉菜单中选择。
【讨论】:
对我来说,即使是最新的代码更改也不会在应用程序中生效。因此,我在断点所在的代码中犯了一个小的编译错误,然后尝试在干净构建后运行解决方案。它遇到了错误,然后我纠正了错误并再次运行它,现在它甚至遇到了断点。
【讨论】:
当我遇到这个问题时,我的解决方案是断开 Team Foundation 服务器 (TMS) - 因为我正在使用它 - 并重新发布网站。
【讨论】:
通常这意味着您的任何程序集都已更改但未重新构建,或者更准确地说,调试信息文件 (PDB) 不是最新的。因此调试器不知道正确的源文本,因此无法进入。重建组件并将其附加到正确的流程。
您还可能考虑到为 .NET 3.5 向下构建的程序集可能不会与为 .NET 4.0 向上的程序集一起处理,您不能同时调试这两种类型。
编辑:为了确保我在检查生成调试信息的程序集类型之前提到的内容。将程序集附加到现有流程时,请按“附加到”后面的选择按钮。如果没有自动完成,您可以在那里选择正确的类型。
【讨论】:
对我来说,它有助于杀死 IIS(如果使用 (ASP.Net))并关闭并重新启动 Visual Studio。 这听起来可能很愚蠢,但有时重启也会有所帮助。
【讨论】:
您应该构建您的项目,如果它是构建,请确保您附加到正确的过程!如果您确定这 2 没问题,请清理解决方案并重新构建。
【讨论】: