2017-07-19 17 views
0

私は、コールバックパラメータAction<string> callbackでこの機能を持っている:コールバック関数とコールバックパラメータの関係

public void sync(Action<string> callback) 
     { 

      var client = new RestClient(RestfulPaths.BASE_URL); 
      var request = new RestRequest(RestfulPaths.SYNC_CHECK, Method.GET); 
      var json = client.Execute(request); 

      client.ExecuteAsync(request, response => 
      { 
       callback(response.Content); 
      }); 

     } 

私は、アプリケーションの別の部分で、この関数を呼び出そうとしました:

ServerSync = manager.sync({ 
    // Get data here 
}); 

答えて

2

Actionは、戻り値はありません代理人であることを示しています。型パラメータstringは、アクションが文字列型の単一パラメータを取ることを示します。したがって、それを使用するには、文字列パラメータを受け入れるデリゲートを渡す必要があります。これを行う簡単な方法は次のとおりです。

manager.sync((responseContent)=>{ 
    Console.WriteLine(responseContent); 
}); 
+0

'アクションは戻り値のないデリゲートであることを示します。どういう意味ですか?今それは価値がないのですか? – OPV

+2

値を返しません。あなたが指定した例では、デリゲートメソッドは 'response.Content'と呼ばれ、残りの呼び出しから取得されます –

+0

だから、代理人の中で私は応答結果を得ることができますか? – OPV