私がやっているAPIからデータを取得するためにrestsharpを使用していますが、Xamarin(Android、iOS)で使用される "ApiInterface" 、Windows ...)を呼び出してAPIを呼び出します。RestSharp onレスポンスコールバックを呼び出す方法が分かりません
このクラスはRestClientと関数を持ち、シングルトンとしてコードのどの部分からでも呼び出されます。
たとえば、私はMainActivity.csのようなものを持っています。 (私のgetData関数を呼び出すと、私が受け取ったデータで物事をする)。
Button buttonListaIntereses = FindViewById<Button> (Resource.Id.myButton);
buttonListaIntereses.Click += delegate {
ApiInterface.Instance.getData(response2=>
{
Intent displayMessage = new Intent(this, typeof(DisplayMessage));
//Put info in Extra for the new screen.
displayMessage.PutExtra("content", response2.Content);
StartActivity(displayMessage);
});
};
しかし、APIInterfaceでは、Cookieのような共通データを取得したいと考えています。
public async void getData(Action <IRestResponse> onDone)
{
RestRequest request = new RestRequest("getData", Method.GET);
//Execute ASYNC the rest request
m_Client.ExecuteAsync (request, response =>
{
//Do my stuff with headers.
string lCookie = response.Headers.ToList().Find(x => x.Name == "Cookie").Value.ToString();
//Execute the OnDone
onDone();
});
}
私の問題は私の中でのgetData OnDoneを実行する方法および/またはのgetData関数を呼び出すためにどのように - 私は確かではありません。
ありがとうございます!
こんにちはアンドレ、私はあなたのコードを試していない、私は非同期/待っているC#の機能を使用して新しいのは何ですか? – Chopi
あなたは、xamarinとそのナビゲーション・フローのすべてのインターフェースを変更したほうがよかったです。 – Chopi