原文:[SignalR]Groups操作

SignalR提供了Groups进行小范围的消息广播。可以通过Add和Remove两个方法进行群组成员操作。并不需要创建Groups,在Add的时候会自动创建命名的群组。但是API没用提供一个方法可以显示群组成员集合,是因为SignalR是基于pub/sub模式广播消息,并没有去维护其中群组成员。

下面聊天室例子演示:

1.首先Global.asax中注册路由,如图:

[SignalR]Groups操作-LMLPHP

2.新建hub类,如图:

[SignalR]Groups操作-LMLPHP

命名为ChatHub,并集成于Hub,如图:

[SignalR]Groups操作-LMLPHP

三个方法,分别是广播消息到全部用户(后续修改完善:广播到用户所属的群组),和用户加入群组,离开群组(异步方式)。

[SignalR]Groups操作-LMLPHP

3.页面设计,

样式代码,如图:

[SignalR]Groups操作-LMLPHP

页面代码,如图:

[SignalR]Groups操作-LMLPHP

效果如图:

[SignalR]Groups操作-LMLPHP

引入signalR所需要的javascript,如图:

[SignalR]Groups操作-LMLPHP

逻辑脚本,如图:

[SignalR]Groups操作-LMLPHP

效果如图:

[SignalR]Groups操作-LMLPHP

参考链接:http://www.asp.net/signalr/overview/hubs-api/hubs-api-guide-server

04-30 19:03