Visual Studio代码与调试源的位置不同步

时间:2011-07-20 00:52:04

标签: c# visual-studio debugging

我已将Visual Studio 2008项目的代码检出到新的本地文件夹中。 (本地文件夹与我通常使用HEAD代码的位置不同。)

我在项目上做了'干净'和'重建' - 创建了一个DLL文件。它成功重建并位于正确的构建区域。

当我查看Solution Explorer中的文件时,它会显示新文件夹中所有文件的正确绝对路径。

问题在于,当我设置断点并尝试调试代码时,它永远不会遇到断点。当我右键单击断点并查看“位置”时,它会向我显示文件在上传到SVN时在HEAD区域中的位置。我没有看到它从哪条路走过。

3 个答案:

答案 0 :(得分:1)

启动调试器后,可能有助于使用菜单 Debug - > Windows - > Modules 可以确切了解Visual Studio从哪里加载程序集。

此外,验证您是否正在构建调试模式。我不愿承认我偶尔会在Release模式下构建,然后想知道为什么调试器不会在断点处停止。

答案 1 :(得分:1)

这是一个可能出错的小清单:

  1. 验证加载的模块(通常为 Ctrl + D + M )。查看您的代码模块是否从您希望加载的位置加载。

  2. 进行清理/重建时,只清理项目的输出(如果我有MyAssembly项目构建MyASsembly.dll,则只删除与该项目相关的文件。在清理过程中不会删除引用的程序集。

  3. 尝试隔离问题。使用 F10 开始调试(进入调试代码)。查看入口点是否正常,但只有一些您尝试触及的其他代码是从错误的位置获取的。

答案 2 :(得分:1)

Visual Studio编辑器不了解unix样式的行尾。尝试在行为不当的源文件上使用unix2dos util。