VS2017调试Razor Page视图时无法查看变量值
解决VS2017调试ASP.NET Core 2.0 Razor视图无法查看变量值的问题
嗨,我之前在VS2017调试ASP.NET Core 2.0 Razor视图时也碰到过一模一样的问题——鼠标悬停只显示变量类型,看不到具体数值,之前VS2015的老方法确实不管用。给你几个针对性的解决方案,按顺序试试:
修改项目文件的调试配置
打开你的项目.csproj文件,添加或确认Debug模式下的以下配置,确保Razor视图保留完整的调试符号:<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'"> <MvcRazorCompileOnPublish>false</MvcRazorCompileOnPublish> <MvcRazorExcludeRefAssembliesFromPublish>false</MvcRazorExcludeRefAssembliesFromPublish> <DebugSymbols>true</DebugSymbols> <DebugType>full</DebugType> </PropertyGroup>保存后重新生成项目,再启动调试试试。这个配置会禁用Razor视图的发布预编译,让调试器能正确获取到变量的具体值。
同时启用两个调试兼容选项
虽然你说VS2015的方法没用,但VS2017里需要同时开启两个选项才生效:- 打开
Tools -> Options -> Debugging -> General - 勾选
Use Managed Compatibility mode和Use the legacy C# and VB expression evaluators - 重启Visual Studio后再调试视图。
- 打开
清理缓存并重新生成
有时候是项目缓存导致的调试符号异常:- 右键解决方案,选择
Clean Solution - 接着选择
Rebuild Solution - 手动删除项目根目录下的
bin和obj文件夹
完成后重新启动调试。
- 右键解决方案,选择
确认断点真正命中
有时候视图被缓存,断点看似打上了但没触发。可以在视图里临时加一行@DateTime.Now,刷新页面后确保断点触发,这时候再悬停变量查看值。
内容的提问来源于stack exchange,提问作者Ryan. B
相关产品推荐
相关产品推荐

