Yaptığım bir API'den veri almak için restsharp kullanıyorum, Xamarin'de kullanılacak bir sınıf yapmak istiyorum (Android, iOS) , Windows ...) API'ye çağrı yapmak.RestSharp on Response Geri arama nasıl yapılır bilemiyorum
Bu sınıf, RestClient ve kodun herhangi bir bölümünden çağrılacak olan bir singleton'dur. Örneğin, örneğin bir MainActivity.cs gibi bir şeye sahip olacağım. (GetData işlevimi çağırmak ve aldığım verilerle ilgili şeyler yapmak).
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);
});
};
Ancak, APIInterface'de çerezler gibi genel veriler almak istiyorum.
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();
});
}
Sorunum Emin değilim nasıl getData benim OnDone yürütmek ve/veya nasıl getData işlevi çağırmak için olmasıdır.
Teşekkürler!
Merhaba Andrés, kodunuzu denemedim, async/await C# özelliklerini kullanarak yeni oldum avantajları nelerdir? – Chopi
Sen xamarin ve onun navigasyon akışı için tüm arayüzü daha iyi değiştiriyordu. – Chopi