1

SignalRは優れたメッセージングライブラリだと聞きました。SignalRのコードをいくつか入手しましたが、それがどのように機能するのか理解できません。

JS

var hooking;
$(function() {

  hooking = $.connection.hooking;
  hooking.removeLead = function(ref) {
    $("lead" + ref).remove();
  };

  $.connection.hub.start();
});

C#

// Hooking.cs (placed in application root)
public class Hooking : Hub
{
  public void Submit(string jsonString)
  {
    var serializer = new JavaScriptSerializer();
    var json = serializer.Deserialize<HookingLeadResult>(jsonString);
    Clients.removeLead(json.Ref); // Remove lead from client hooking windows
    // update lead gen
  }
}

上記のコードについて質問があります。

  • hookinginsとはどういう意味ですか$.connection.hooking;
  • どこremoveLeadにありますかhooking.removeLead
  • これは何をします$.connection.hub.start();か?何から始まりますか?サーバー側でどのメソッドを呼び出しますか?
  • サーバー側で誰とどのようSubmitにメソッドが呼び出されますか?クライアント側からサーバー側にデータを渡す方法。可能であれば、SignalRライブラリの適切な開始のためのURLを教えてください。
4

1 に答える 1

3

hooking.removeLeadを呼び出すたびに、Javascript 関数が呼び出されますClients.removeLead()。すべてのバインドは、Javascript と C# の間、および C# と Javascript の間で動的に行われます。

$.connection.hub.start()実際には接続機能です。クライアントをサーバーに接続します。あなたがそうするまで、メッセージを送受信することはできません。このstart関数を使用すると、接続が完了したときに呼び出されるコールバックを定義できます。

Submitクライアントで呼び出しを行うたびに、サーバーのメソッドがhooking.submit(json)呼び出されます。たとえば、ユーザーが何らかのフォームに入力してボタンをクリックした結果として。

SignalR の公式 wiki から始めることをお勧めします: http://www.asp.net/signalr

于 2012-08-17T13:55:12.780 に答える