SignalR提供了Groups进行小范围的消息广播。可以通过Add和Remove两个方法进行群组成员操作。并不需要创建Groups,在Add的时候会自动创建命名的群组。但是API没用提供一个方法可以显示群组成员集合,是因为SignalR是基于pub/sub模式广播消息,并没有去维护其中群组成员。
下面聊天室例子演示:
1.首先Global.asax中注册路由,如图:
2.新建hub类,如图:
命名为ChatHub,并集成于Hub,如图:
三个方法,分别是广播消息到全部用户(后续修改完善:广播到用户所属的群组),和用户加入群组,离开群组(异步方式)。
3.页面设计,
样式代码,如图:
页面代码,如图:
效果如图:
引入signalR所需要的javascript,如图:
逻辑脚本,如图:
效果如图:
参考链接:http://www.asp.net/signalr/overview/hubs-api/hubs-api-guide-server