Blazor Webassembly 项目中不会出现断点,ASP.NET Core 3.1,

Breakpoints won't hit in Blazor Webassembly project, ASP.NET Core 3.1,

ASP.NET Core 3.1,Blazor Webassembly 项目中不会出现断点。

我有一个 Blazor Webassembly 项目的解决方案,我在本地 运行。

在 .cs 文件中放置断点时显示:

"The breakpoint will not currently be hit. A copy of Startup.cs was found in blazor-devserver.dll, but the current source code is different from the version built into blazor-devserver.dll.

To allow this breakpoint to be hit, click the 'Settings...' button that appears, then click 'Location', 'Allow the source code to be different from the original.' ..."

这对我来说很奇怪,因为我没有部署,我只是在 Visual Studio 中按了 F5,所以我没有部署 查看代码有何不同。

Wen 断点放在 .razor 文件中,它说:

"The breakpoint will not currently be hit. No symbols have been loaded for this document"

在模块 window 中,已为所有条目加载符号。

直到最近它都运行良好。 我唯一做的就是安装 Microsoft Code Anlysis 2019(再次将其删除)。

Blazor Webassembly 仍处于预览阶段,因此您无法直接调试 cs 文件。仅通过 Chrome 支持调试。详细信息记录在案 here

您现在可以使用 Visual Studio2019 的预览版调试 Blazor WebAssembly。您可以查看详情here

我知道这并没有直接回答这个问题,但这只是在 google 上弹出的问题。调试时,我无法为 blazor 客户端(asp.net 核心托管)加载符号。原来我在 asp.net core server app.

中遗漏了一行 launchSettings.json
"inspectUri": "{wsProtocol}://{url.hostname}:{url.port}/_framework/debug/ws-proxy?browser={browserInspectUri}"

希望这对某人有所帮助。

还在所有配置文件断点中使用“inspectUri”仍然不会为 Razor 组件命中。我曾在 launchsettings 中设置 "sslPort": 0 作为解决方法,但现在我无法使用它,否则我无法登录我的 Blazor Webassembly 项目。 我正在开发一个托管的 Blazor WebAssembly 应用程序,配置为 HTTPS,带有身份验证。

我发现设置 Windows 以使用 Edge 作为默认浏览器并配置项目以启动浏览器,允许 Visual Studio 配置并连接到 Edge 浏览会话。

  • 手动启动 Edge 无效。
  • 启动 Edge 并按 Shift+Alt+D 无效。
  • 使用命令行“msedge --remote-debugging-port=9222 --user-data-dir="C:\Users\MyUserProfile\AppData\Local\Temp\blazor-edge-debug" --no-first-运行 启动 Edge https://localhost:12345/" 无效。
  • 配置防火墙以接受 TCP 端口 9222 上的传入连接无效。

可以在 this article 找到设置不同默认浏览器的替代方法。这与将 Edge 设置为默认浏览器一样有效。

我想Chrome也可以用同样的方法,但我没试过。

使用 Blazor 和 .net 5 从 FireFox 切换到 Google Chrome 对我有用。