我有一个SignalR集线器管理一种类型的消息传递。我需要在同一页面添加第二个集线器,这只是一个消息发布并返回到其他客户端并发布消息。
是否可以为一个连接设置多个集线器?这笔交易是,如果一个集线器在其他集线器之前启动,如果第一个集线器已经开始连接,我该如何连接或订阅当前集线器?
它们既是一种消息传递类型的集线器,也是一种或可能使用的集线器。
我该如何处理?
答案 0 :(得分:10)
要为一个页面设置多个集线器,您不需要执行任何特殊操作,只需创建另一个集线器类。
要确保您可以从集线器接收消息,请确保在开始连接之前已为集线器注册了客户端方法。
因此,如果您想使用多个集线器,那么您需要做的就是在开始连接之前为要预订的集线器提供客户端方法。
无论您订阅了多少个集线器,它们都使用一个非常好的连接:)。
要解决在连接启动后想要“订阅”集线器的问题,您不能。另一种方法是始终订阅两个集线器并使用组来控制数据的发送位置。您可以在此处详细了解群组:http://www.asp.net/signalr/overview/signalr-20/hubs-api/working-with-groups