获取Hub集线器实例的方式

1.获取当前应用程序中的集线器实例

public partial class Startup
{
    Thread thread = null;
    LogHelper.LogHelper _log = new LogHelper.LogHelper();
    public void Configuration(IAppBuilder app)
    {
        ConfigureAuth(app);
        注册服务器端相应地址
        //app.Map("/realtime/echo", map =>
        //{
        //    map.UseCors(CorsOptions.AllowAll);
        //    map.RunSignalR<EchoConnection>();
        //});
        //注册服务器端相应路由
        //app.MapSignalR<TrackerConnection>("/tracker");

        //注册集线器路由
        app.MapSignalR("/realtime", new HubConfiguration() { });

        //启动线程发送消息通知
        thread = new Thread(() =>
        {
            while (true)
            {
                Thread.Sleep(2000);
                _log.WriteLine("thread2:");
                //new EchoHub().Broadcast("后台自动发送消息");
                try
                {
                    //发送失败:Using a Hub instance not created by the HubPipeline is unsupported.
                    //new EchoHub().Clients.All.Message("后台自动发送消息");
                    //发送失败:Using a Hub instance not created by the HubPipeline is unsupported.
                    //DefaultHubManager manager = new DefaultHubManager(GlobalHost.DependencyResolver);
                    //var hub = manager.ResolveHub("EchoHub") as EchoHub;
                    //hub.Clients.All.Message("asdfasdf");
                    //发送消息成功
                    var hub = GlobalHost.ConnectionManager.GetHubContext<EchoHub>();
                    hub.Clients.All.Message("asdfasdf");
                }
                catch (System.Exception ex)
                {
                    _log.WriteLine(ex.Message);
                }
            }
        });
        thread.Start();
    }
}
关键代码:

 //发送消息成功
 var hub = GlobalHost.ConnectionManager.GetHubContext<EchoHub>();
 hub.Clients.All.Message("asdfasdf");




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值