2016-08-25 20 views
0

当我在同一个库中实现一个SignalR Server和Client时,如何告诉服务器使用哪个服务器?SignalR服务器和客户端在同一个程序集中,如何指定集线器

我的第一个尝试是:

public void Configuration(IAppBuilder app) 
{ 
    var hubConfiguration = new HubConfiguration(); 
    hubConfiguration.EnableDetailedErrors = true; 
    hubConfiguration.EnableJavaScriptProxies = false; 
    hubConfiguration.Resolver.Resolve<TeamHubServer>(); 

    app.UseCors(CorsOptions.AllowAll); 
    app.MapSignalR(hubConfiguration); 
} 

看来,从Hub继承所有classes注册。

非常感谢!

回答

1

你必须定义从集线器

继承的类
public class ExampleHub : Hub 

然后覆盖这两个方法

public override Task OnConnected() 
public override Task OnDisconnected(bool stopCalled) 

,你将能够在ExampleHub类来定义新的方法

毕竟你会打电话的方法如下:

var con = GlobalHost.ConnectionManager.GetHubContext<ExampleHub>(); 
con.Clients.All.addNew(param); 
相关问题