2014-09-23 96 views
0

枢纽代码:Signalr 2.1.1 OnConnected不与客户端回调甚至解雇

private readonly IHubContext<IMyHubClient> _context; 

    public MyHub(IHubContext<IMyHubClient> context) 
    { 
     _context = context; 
    } 

    public override Task OnConnected() 
    { 
     string userName = Context.User.Identity.Name; 
     string connectionId = Context.ConnectionId; 

     //some code to store connected user info 

     return base.OnConnected(); 
    } 

客户端代码:

 $.connection.myHub.client.connected = function() { alert('1'); }; 
     $.connection.myHub.client.disconnected = function() { alert('2'); }; 
     $.connection.hub.start() 
        .done(function(){ console.log('Now connected, connection ID=' + $.connection.hub.id); }) 
        .fail(function(){ console.log('Could not Connect!'); }); 

客户端成功地连接到集线器和JS回调的工作。但服务器端OnConnected方法从不会触发。可能是什么问题?

回答

1

MyHub越来越构建?我doub't SignalR能够提供IHubContext<IMyHubClient>参数。如果你添加一个无参数的构造函数或删除现有的构造函数,你的代码应该工作。

+0

我使用SignalR,移动测试我很久以前写的,我更新的枢纽,从2.0到2.1,并写了很多的变化,顺便说一句,我有问题与网络连接的用户,所以我重写大量的代码,并更换用户用非常简单的代码管理的一部分,我得到了什么,现在,我的理解是,我的构造函数和的onConnect,不会得到要求的第二个用户,一旦第一个用户得到了连接:| – deadManN 2017-02-26 13:14:59