2

Broadcast メソッドとともに定義された ChatHub クラスがあるとします。

いずれかのクライアントがメッセージを送信した場合にすべてのクライアントにメッセージをブロードキャストする方法は知っていますが、 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

https://github.com/SignalR/SignalR/wiki/HubsConnectionManagerで説明されているように、 を使用します。ところで、あなたの質問はおそらくこれと重複しています。

于 2012-07-31T20:43:59.787 に答える