2

假设我定义了一个 ChatHub 类和一个 Broadcast 方法。

如果其中一个发送消息,我知道如何向所有客户端广播消息,但是如何从 Global.asax 向所有客户端发送消息?

换句话说,我如何从另一个班级访问 ChatHub?

这是一个基本示例:

    public class ChatHub : Hub
    {
      public void Broadcast(String reqMessage)
      {
        Clients.broadcast(reqMessage);
      }
    }

非常感谢您的帮助。

4

2 回答 2

4

从 SignalR 0.5 开始,您可以使用GlobalHost.ConnectionManager.GetHubContext

样本

// get gub context
IHubContext context = GlobalHost.ConnectionManager.GetHubContext<ChatHub>();
// broadcast to all clients in this hub
context.Clients.broadcast("Hello World");

更多信息

于 2012-07-31T20:46:18.783 回答
1

使用ConnectionManager,如此处所述:https ://github.com/SignalR/SignalR/wiki/Hubs 。顺便说一句,您的问题很可能与问题重复。

于 2012-07-31T20:43:59.787 回答