我正在查看带有 asp.net 托管的 Blazor 客户端。所以我正在浏览模板项目,Visual Studio 预览版似乎不支持 razor 页面中的断点,更具体地说是代码块:
@code { private WeatherForecast[] forecasts; protected override async Task OnInitializedAsync() { forecasts = await Http.GetJsonAsync<WeatherForecast[]>("WeatherForecast"); //breakpoint here } }
是否有解决方法或我缺少什么? 谢谢!
Blazor Webassembly 调试目前只能使用 Chrome 浏览器调试代理。这些步骤在 Blazor 文档中进行了介绍:
- 在调试配置中运行 Blazor WebAssembly 应用。
- 将
--configuration Debug
选项传递给 dotnet run 命令:dotnet run --configuration Debug
- 在浏览器中访问应用程序。
- 将键盘焦点放在应用上,而不是开发人员工具面板上。启动调试时,可以关闭开发人员工具面板。
- 选择以下特定于 Blazor 的键盘快捷方式:
Shift+Alt+D
在 Windows/Linux 上- 在 macOS 上
Shift+Cmd+D
- 按照屏幕上列出的步骤在启用远程调试的情况下重新启动浏览器。
- 再次选择以下特定于 Blazor 的键盘快捷方式以启动调试会话:
Shift+Alt+D
在 Windows/Linux 上- 在 macOS 上
Shift+Cmd+D
"在 Visual Studio 中按 F5 操作"调试体验尚未准备就绪。Daniel Roth 在 .NET 社区站立视频中演示了其中的一些内容。基本上,Visual studio可以附加到浏览器的调试代理。目前,在预览版本中,您必须手动执行一系列步骤,而将来,这些步骤应由Visual Studio简化并完成。
更新 三月 26, 2020
Microsoft发布了WASM Blazor的新预览版,并改进了对Visual studio中调试的支持。详情请见此处。