个别中心onDisconnect

时间:2017-04-28 04:15:41

标签: javascript c# signalr

我有1 SignalR个连接和2个HubsChatHub& OnlineHub

我一直在研究如何OnConnect&每个OnDisconnect Hub。 目前,当我开始与服务器建立连接时,ChatHubOnlineHub都会运行OnConnected()。无论如何我可以将它们分开吗?

$.connection.hub.url = chatHubUrl;
var chat = $.connection.ChatHub;
var onlinehub = $.connection.OnlineHub;

$.connection.hub.start({ withCredentials: false }).done(function () {
    onlinehub.server.connectGlobalConnection(userId, token).done(function () {});
});

[HubName("OnlineHub")]
public class OnlineHub : Hub
{
    public override Task OnConnected()
    {
        Groups.Add(Context.ConnectionId, "Online");
        return base.OnConnected();
    }
}

[HubName("ChatHub")]
public class ChatHub : Hub
{
    public override Task OnConnected()
    {
        return base.OnConnected();
    }
}

我要问的是,每个集线器都可以作为单一连接吗?

我们说来自URL-Chat的ChatHub,来自URL-Online的OnlineHub

所以我可以很容易地发现他们的OnConnect& OnDisconnect

1 个答案:

答案 0 :(得分:0)

没有。请参阅相关文档here

具体做法是:

  

您可以在应用程序中定义多个Hub类。当你这样做   这样,连接是共享的,但组是分开的。