Blazor 服务器方法调用和执行详细信息

fou*_*der 2 c# .net-core blazor blazor-server-side

我正在关注这个 Blazor 服务器计数器增量示例

具体代码示例如下。

我有三个问题:

1 -单击按钮后是否通过 SignalR 调用 IncrementCount?

2 - IncrementCount 的执行是否发生在服务器上?(与在浏览器中相反)

3 -如果是通过 SignalR - 我怎样才能看到使用 Chrome 开发者工具发出的“呼叫”(请求)?我查看了网络选项卡,看不到任何活动。看截图:

在此处输入图片说明

代码示例:

@page "/counter"

<h1>Counter</h1>

<p>Current count: @currentCount</p>

<button class="btn btn-primary" @onclick="IncrementCount">Click me</button>

@code {
    private int currentCount = 0;

    private void IncrementCount()
    {
        currentCount++;
    }
}
Run Code Online (Sandbox Code Playgroud)

agu*_*ars 5

使用Blazor 服务器

1 - 是的,它通过 SignalR 发生
2 - 是的,它在服务器上运行
3 - SignalR 默认使用 websoket,如果您想在浏览器开发工具中查看 Http 请求,请将SignalR 传输配置为使用长池
或使用 firefox,您可以使用Firefox 的新 WebSocket Inspecto

使用Blazor WASM

1 - 不,它在浏览器上执行
2 - 不,它在浏览器上执行
3 - 没有请求,但您可以使用 Visual Studio 断点进行调试,因为 3.1-preview4