在前面的章节中,我们都是采用两方模式, 客户端 <-> 服务端,也就是说在这种情况下如果有第三方如果有通知的没有办法插足的,下面解决方案
1:和之前的代码一样,在index页面加一个客户端的方法 ,
2:修改PersonHub方法里面的方法如下
3:在原有的controller里面在加一个action名为index123,同时在index123方法里面加入如下代码=》这就相当于第三方逻辑,
Thread.Sleep(500); var connectionID = PersonHub.List[0]; var hub = GlobalHost.ConnectionManager.GetHubContext<PersonHub>(); hub.Clients.Client(connectionID).notice("您当前已经欠费");
4:运行项目,同时打开两个页面,,那木两个页面都是登陆成功,然后在打开,index123,断点代码会发现,这里获取到了两个connectionID
5:最终结果,是只给第一个人发了通知
6:signalr全局参数的设置,配置地方在ownin startup里面设置