1

SignalR のチュートリアルをいくつか読みました。既存の Asp.Net ソリューション アプリケーションに SignalR を実装するために、次のことを行いました。

別の MVC 4 プロジェクトを作成し、いくつかのメソッドと共に Hub クラスを作成したので、既存のソリューションに存在する他の MVC プロジェクト/クライアントから呼び出すことができます。つまり、それをサービスとして使用したいということです。

しかし今、私は2つの質問があります:

  1. 他の MVC プロジェクトから呼び出すにはどうすればよいですか。チュートリアルで述べたのと同じ方法でしょうか。例として、.cshtml ページの先頭に必要なスクリプト ファイルを追加し、次のような js スクリプトを使用します。

    var ハブ = $.connection.; //その後

    hub.server.send("いくつかの引数");

  2. サーバー側のコードからもハブコードを直接呼び出したいです。以前、SuperSocket を使用していたときにそれを行いました。SignalR を使用して同じアプローチを実行したいと考えています。どうすればできますか?

あなたが答えるなら、コードサンプルを教えてください。どうもありがとう。

4

1 に答える 1

3

Hub クラスの外部 (ただし、アプリケーション内) からクライアント メソッドを呼び出すためのサンプル コードは、こちらにあります。基本的に、ConnectionManager を使用してハブのクライアントを呼び出します。

var context = GlobalHost.ConnectionManager.GetHubContext<MyHub>();
context.Clients.All.myClientMethod(myValue);

アプリケーションの外部からこれを呼び出すには、何らかの公開されたメソッドまたはサービスを使用して、上記のコードをラップします。

于 2013-07-22T11:02:59.770 に答える