3

SignalR 0.4 の調査を開始しましたが、問題が発生しました。シンプルにするために、同じページに 2 つの異なるハブを配置したいと思います。

public class ChatHub : Hub
{
    public void Send(string message) 
    {
        Clients.addMessage(message);
    }
}

public class Chat2Hub : Hub
{
    public void Send2(string message) 
    {
        Clients.addMessage2(message);
    }
}

これは私のクライアントコードです:

function initChat() {
    var chat = $.connection.chat;

    chat.addMessage = function (message) {...};
    $('.send-cmd').click(function () {...});

    return $.connection.hub.start();
}

function initChat2() {
    var chat2 = $.connection.chat2;

    chat2.addMessage2 = function (message) {...};
    $('.send2-cmd').click(function () {...});

    return $.connection.hub.start();
}

$(function() {
    initChat().done(function() {
        initChat2();
    });
});

簡単ですが、それらを連携させることはできません。この例では、「chat」は正しく機能し、「chat2」は失敗します (エラーなし)。もちろん、初期化の順序を逆にすると、逆のことが起こります。

What am I missing?

4

1 に答える 1

3

ハブ接続を 2 回開始するのはなぜですか。すべてのハブに対して 1 つの接続があるため、$.connection.hub.start() を 1 回呼び出すだけで済みます。

于 2012-02-14T10:40:17.933 に答える