【发布时间】:2015-10-17 02:33:05
【问题描述】:
我有一个在 Visual Studio 2013 中构建的多项目解决方案,它工作正常,但现在我已升级到 Visual Studio 2015,我无法再在除主项目之外的任何项目的调试模式下打断点在项目属性页面中选择为启动项目。我以前可以单击其他项目,然后选择 Debug -> Start New Instance。我收到了错误 The breakpoint will not currently be hit. No symbols have been loaded for this document. 我已经尝试了很多在 Google 上找到的东西,包括:
- 清理/重建
- 从项目中删除 OBJ 和 BIN 文件夹
- VS 修复了吗
- 重新启动
- 已卸载/重新安装
- 已确认已为 Properties -> Build 启用定义 DEBUG 约束
- 已确认优化代码未选中属性 -> 构建
- 确认属性 -> 构建 => 平台目标设置为所有项目的任何 CPU
- 尝试使用“以管理员身份运行”运行 VS
- 已删除 /AppData/Local/Temp/Temporary ASP.Net Files/ 中的所有文件
- 确保调试 -> 攻击进程 -> 选择“自动确定要调试的代码类型”
- 确保 Properties -> Web -> Debuggerts 已选中 ASP.Net(我的属性已选中 ASP.NEt 和 Enable Edit and Continue,Natvie Code SQL Server 和 Silverlight 未选中)
- 在属性中确认目标框架 -> 应用程序设置为与 Web.Config/App.Config 文件中相同的版本 (4.6)。
那么我在这里错过了什么?为什么我不能再调试其他项目?
【问题讨论】:
-
如果您进行更改并运行应用程序,您会在网站上看到这些更改吗?通常,当您无法调试时,这意味着您运行的代码与您在可视化中打开的代码不同。我会假设某处的路径设置不正确。
-
你试过这些,去工具 -> 选项 -> 调试 -> 常规 取消选中带有文本“要求源文件与原始版本完全匹配”的复选框。要选择 Build,然后选择 Configuration Manager 以选择每个项目的配置。 this link 用于 winforms 但可能会有所帮助。
-
@EJD 我刚刚在控制器中添加了一行新代码,并在视图中打印出来。我在该新行上设置了一个调试点。断点仍然给出相同的错误,并且新代码被触发并显示在视图中(我只是用测试字符串填充了一个新的 ViewBag 变量)。
-
@learningNew 我禁用了该选项并遇到了同样的问题。
-
我知道它已经到了断点,但网页上显示的文本是否发生了变化?如果文本保持不变,那么您在浏览器中看到的不是最新代码。如果文本发生了变化,那么我们至少排除了一些可能性。
标签: c# asp.net debugging visual-studio-2015