当我在同一个库中实现SignalR Server和Client时,如何告诉服务器hubs
使用哪个?
我的第一次尝试是:
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);
}
似乎已注册从classes
继承的所有Hub
。
非常感谢!
答案 0 :(得分:1)
您必须定义一个继承自Hub
的类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);