Blazor Webassembly 数据库通知
Blazor Webassembly Database Notification
关于 Blazor Wasm 和 Blazor Server 的所有信息让我有点不知所措。
到目前为止,我有一个 5 岁的 ASP.NET MVC 应用程序,带有 SignalR Hub 运行 当数据库中发生某些更改时通知我的视图。
这里说清楚。我有一个现有的数据库记录。我将此数据库记录呈现给 MVC 视图中的用户。用户正在观看此视图,当外部源对数据库中的此记录进行更新时,部分视图会刷新而无需重新加载整个网站。
截至目前,我有一个由 .NET Core 托管的 Blazor Webassembly API,可以轻松切换到 Blazor Server。
目前在 Blazor Server/Blazor WASM 中是否可行...如果可能的话,我更喜欢 WASM :)
提前致谢 <3
绝对可以 WASM/Server!您仍然必须使用 SignalR 集线器来告诉客户端刷新组件。但是,当从 SignalR Hub 发出重新加载 UI 的事件时,可以像调用 StateHasChanged()
一样简单。这是一个例子:
...
hubConnection.On("RefreshTable", _ =>
{
// Retrieve the updated list from the DB - or utilize SignalR?
StateHasChanged();
});
...
Microsoft 网站上有一个很棒的指南,可以使用 Blazor WASM 获得基本的 SignalR 聊天应用程序 运行:https://docs.microsoft.com/en-us/aspnet/core/tutorials/signalr-blazor?view=aspnetcore-5.0&tabs=visual-studio&pivots=webassembly#add-razor-component-code-for-chat
关于 Blazor Wasm 和 Blazor Server 的所有信息让我有点不知所措。 到目前为止,我有一个 5 岁的 ASP.NET MVC 应用程序,带有 SignalR Hub 运行 当数据库中发生某些更改时通知我的视图。
这里说清楚。我有一个现有的数据库记录。我将此数据库记录呈现给 MVC 视图中的用户。用户正在观看此视图,当外部源对数据库中的此记录进行更新时,部分视图会刷新而无需重新加载整个网站。
截至目前,我有一个由 .NET Core 托管的 Blazor Webassembly API,可以轻松切换到 Blazor Server。
目前在 Blazor Server/Blazor WASM 中是否可行...如果可能的话,我更喜欢 WASM :)
提前致谢 <3
绝对可以 WASM/Server!您仍然必须使用 SignalR 集线器来告诉客户端刷新组件。但是,当从 SignalR Hub 发出重新加载 UI 的事件时,可以像调用 StateHasChanged()
一样简单。这是一个例子:
...
hubConnection.On("RefreshTable", _ =>
{
// Retrieve the updated list from the DB - or utilize SignalR?
StateHasChanged();
});
...
Microsoft 网站上有一个很棒的指南,可以使用 Blazor WASM 获得基本的 SignalR 聊天应用程序 运行:https://docs.microsoft.com/en-us/aspnet/core/tutorials/signalr-blazor?view=aspnetcore-5.0&tabs=visual-studio&pivots=webassembly#add-razor-component-code-for-chat