SignalR 变量正在重置

SignalR Variables are being Reset

使用我的 SignalR 程序,我让我的客户端调用服务器端方法。我的全局变量没有正常工作,所以我做了一个快速的小测试,我发现全局变量似乎每次都被重置,我想知道我做错了什么以及我是否可以防止我的变量被重置。

JavaScript方法:

  $.connection.hub.start().done(function () {
            $('#send').click(function () {
                chat.server.send(0, document.getElementById("Name").value, document.getElementById("Content").value);//send eventually calls broadcastArray

            });
        });

集线器方法:

int i = 0;
    public void BroadcastArray()
    {
        var hubContext = GlobalHost.ConnectionManager.GetHubContext<ChatHub>();
        hubContext.Clients.All.broadcastArray(messageArr);
        i = i + 1;
    }

无论我调用多少次方法 i 总是返回 1,我怎样才能阻止变量被重置?有没有办法在集线器 class 中执行此操作,或者我会将我的变量存储在不同的 class 中?我不太确定该怎么做。

我要做的第一件事是将它放在 try/catch 中,看看它在到达该行之前是否抛出错误。如果您的 hubcontext 没有正确返回,我可能会默默地抛出异常。

其次,您的集线器是静态集线器吗class?没有看到您是如何设置集线器的,很难说出哪里出了问题。