我试图在blazor wasm Program.cs中使用Program.cs中的QuickWatch调试和计算表达式。为了在Main方法中命中断点,我添加了
await Task.Delay(10000);这给调试代理一些时间来加载,正如文档中提到的那样。
现在,当我的断点被击中后,如果我选择任何表达式并按Shift+F9来切换QuickWatch,我就会得到
无法评估(无法评估)
对于任何变量,表达式。请帮我弄清楚我缺少的东西
屏幕打印:

发布于 2020-09-15 07:24:44
目前,Blazor WebAssembly不支持在Program.cs中命中断点-- Program > Main方法。以下是来自微软文档的
就目前而言,你不能:
Program.Main (Program.cs)中的断点和从应用程序请求的第一个页面加载的组件的OnInitialized{Async}方法中的断点。发布于 2021-03-24 13:01:03
对我来说,这是从DotNet Core3.x升级到5.0的一个问题。
用相同的配置创建一个全新的Blazor应用程序并比较所有的项目文件是个好主意。在我的例子中,它是{MyProject}.Server.csproj中的一个条目:
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="3.2.1" />需要更新为最新版本:
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="5.0.4" />一切正常运行,断点被击中,但在我更改该行之前,所有变量都会在Quickwatch中显示“无法评估(无法评估)”,而在编辑器中悬停则没有显示任何内容。
https://stackoverflow.com/questions/63894260
复制相似问题