我有一个聊天室使用SignalR Hub进行消息传递.偶尔我会收到用户"冻结"的报告.现在这可以被解释为没有消息通过,我怀疑它们已从组中删除.
我的问题是,连接是否会自动重新订阅回其组中,或者您是否必须自己在Reconnect方法中执行某些操作:
public Task Reconnect(IEnumerable<string> groups)
{
return Clients.rejoined(Context.ConnectionId, DateTime.Now.ToString());
}
Run Code Online (Sandbox Code Playgroud)
是的,在1.0.0.0-alpha1中,您可以使用新的AutoRejoiningGroupsModule管道模块,使用EnableAutoRejoiningGroups您构建的集线器管道的扩展方法,启用组的自动重新加入.此功能在以前版本的框架中不可用.
所以你最终会在你的启动代码中找到它:
GlobalHost.HubPipeline.EnableAutoRejoiningGroups();
Run Code Online (Sandbox Code Playgroud)
更新:
请注意,SignalR 1.0的最终版本使组自动重新加入默认行为,因此EnableAutoRejoiningGroups被删除.您可以查看此答案以获取更多详细信息.
| 归档时间: |
|
| 查看次数: |
1115 次 |
| 最近记录: |