在 Razor View (".cshtml") 中设置断点时,当调试器启动时,通常为红色的圆圈会变成红色空心圆圈。将鼠标悬停在空心圆上时,它会显示以下内容:
The breakpoint will not currently be hit. No symbols have been loaded for this document
这只是 razor View 文件,普通的“.cs”文件没有问题。
还有许多其他问题针对与上述相同的“错误”消息提出了解决方案,但没有一个真正有效。我尝试过的:
- 清洗溶液
- 确保在属性 -> Web 窗口的“调试器”部分下选中 ASP.NET
- 确保在属性 -> 构建窗口中选中定义调试和跟踪,并在同一窗口的输出部分单击高级按钮,将调试信息设置为“完整”
- 重建一切一百万次。
- 以管理员权限使用 VS(我通常这样做)
- 重启系统
- 在 IIS 中重新启动站点
- 确保事件解决方案配置设置为调试
- 检查了web.config文件中,compilation debug="true"
编辑:我指的当然是 Razor 代码,而不是 html 甚至 javascript。例如。在 razor 的 foreach 循环中设置断点
Edit2:如果我在 Controller 中设置断点,我可以单步执行 Razor 代码,因为调试器将在“完成”之前通过 View 。不过,我仍然无法在 Razor View 文件中实际设置断点。空心圆还在显示,不会被击中。
Edit3:终止指向 w3wp.exe 的“IIS 工作进程”临时解决了问题。我能够再次调试 Razor View 。几个小时后,同样的问题再次出现。
最佳答案
我发现在 .cshtml
文件(中间有一个构建)上切换 Build Action = Content/Compile(在属性窗口中)让我重新设置断点。
关于c# - Visual Studio 2012 - Razor View 文件 (".cshtml"中的断点)未加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24162515/