我在服务器端的 asp.net 核心中使用 SignalR,在客户端使用 blazorise。在我使用SignlaR基本上只是为了聊天之前,现在我想在将记录插入其他地方时使用它来更新表。我认为服务器端一切正常,因为当我在服务器上跟踪它时,它会发布正确的值,但不会更新客户端的表。我不知道怎么了。这是我在集线器中的服务器端代码:
public async Task SendCartableUpdate(ResultData<PersonnelStationsInfo> resultData)
{
await Clients.All.SendAsync("RefreshCartable",resultData);
}
这就是我在客户端使用它的方式:
protected override async Task OnInitializedAsync()
{
//await base.OnInitializedAsync();
user = CurrentUserService.CurrentUser;
await CartableTableChangePage(1);
hubConnection = new HubConnectionBuilder()
.WithUrl(navigationManager.ToAbsoluteUri("http://localhost:15424/ProductionServiceHub"))
.Build();
hubConnection.On<ResultData<PersonnelStationsInfo>>("RefreshCartable", (_resultData) =>
{
StateHasChanged();
});
await hubConnection.StartAsync();
}
谢谢你的帮助