SignalR 1.0 beta连接工厂

Hea*_*her 4 signalr

既然SignalR的新版本已经废除了IConnectionFactory接口,那么建议用于设置客户端连接ID的模式是什么?

hal*_*r73 5

在1.0中,不再有任何建议的模式来设置SignalR客户端的连接ID.

最佳做法是在SignalR服务器上维护状态,将应用程序的用户映射到连接ID.向此映射添加连接ID的明显位置是OnConnected.您可以使用OnDisconnected删除连接ID.

另一个选项,也可以在OnConnected中完成,是将客户端的连接ID添加到一个组,该组具有您之前在IConnectionIdFactory.CreateConnectionId中为客户端创建的名称.当然,该组只包含一个客户端,因此您可以将您已发送到自定义连接ID的所有消息发送给该组.

注意:如果您使用映射选项,如果您担心AppDomain重新启动并且您将此状态存储在某种静态变量而不是更持久的情况下,您可能还会尝试在OnReconnected中向地图添加连接ID.如果你要扩展SignalR,显然你需要共享状态.