我正在尝试使用signalR作为消息传递系统来更新网页上的进度条等 - 我需要能够将progess(或任何消息)隔离到特定页面。
IHubContext hubContext = GlobalHost.ConnectionManager.GetHubContext<InventoryHub>();
&gt;&gt;等消息hubContext.Clients.All.InitialiseProgress(inventoryData.Count());
显然问题是Clients.All
- 我只是不确定如何连接它以便当它从服务器发送回客户端时 - 它只发送到它被调用的页面。我无法理解connectionid
。
请帮助: - )
答案 0 :(得分:0)
您可以使用SignalR Groups将进度消息广播到特定页面。
来自Working with Groups in SignalR:
将连接ID添加到组:
public class ContosoChatHub : Hub
{
public Task JoinRoom(string roomName)
{
return Groups.Add(Context.ConnectionId, roomName);
}
public Task LeaveRoom(string roomName)
{
return Groups.Remove(Context.ConnectionId, roomName);
}
}
向特定群组广播:
Clients.Group(groupName).addChatMessage(name, message);