0

SignalR を試していますが、同じハブを呼び出す方法でクライアントからメソッドを呼び出す方法がよくわかりません。

私のハブには2つの方法があります。

    private ctlDataManager myManager;
    public void StartConnection()
    {
        myManager = new ctlDataManager("test");

        myManager.UpdateItemEvent += myManager_UpdateItemEvent;

        myManager.Connect();
    }

    public void StopConnection()
    {
        myManager.Disconnect();
    }

そして、私のクライアントでは、次のようにそれらを呼び出そうとします:

var notificationHub = $.connection.notificationHub;

    $.connection.hub.start()
        .done(function (state) {
            $("#submit").click(function (e) {
                e.preventDefault();
                notificationHub.server.startConnection();
                return false;
            });

            $("#stop").click(function (e) {
                e.preventDefault();
                notificationHub.server.stopConnection();
                return false;
            });
        });

スタートボタンをクリックすると、正常に動作し、データも受信します。しかし、停止ボタンをクリックすると、オブジェクト エラーのインスタンスがスローされます。「myManager」が null のようです。新しいハブがオープンしたようです。当然、接続を閉じる必要があるのと同じにする必要があります。どうやってやるの?

4

1 に答える 1