Sto tentando di utilizzare la documentazione su RestSharp GitHub wiki per implementare le chiamate al mio servizio API REST ma sto avendo un problema con il metodo ExecuteAsync in particolare.Come devo implementare ExecuteAsync con RestSharp su Windows Phone 7?
Attualmente il mio codice è simile per la classe API:
public class HarooApi
{
const string BaseUrl = "https://domain.here";
readonly string _accountSid;
readonly string _secretKey;
public HarooApi(string accountSid, string secretKey)
{
_accountSid = accountSid;
_secretKey = secretKey;
}
public T Execute<T>(RestRequest request) where T : new()
{
var client = new RestClient();
client.BaseUrl = BaseUrl;
client.Authenticator = new HttpBasicAuthenticator(_accountSid, _secretKey);
request.AddParameter("AccountSid", _accountSid, ParameterType.UrlSegment);
client.ExecuteAsync<T>(request, (response) =>
{
return response.Data;
});
}
}
Sono consapevole questo si discosta leggermente da quello che è sulla pagina GitHub, ma sto usando questo con WP7 e credere l'esempio è per C# quindi l'uso del metodo ExecuteAsync.
Il mio problema è con cosa deve contenere il comando ExecuteAsync. Non posso usare return response.Data
perché sto messo in guardia:
'System.Action<RestSharp.RestResponse<T>,RestSharp.RestRequestAsyncHandle>' returns void, a return keyword must not be followed by an object expression
Qualcuno ha una visione chiara su come riparare questo o un tutorial che può aiutare?
Anche l'esempio ha lo stesso errore di sintassi e non viene compilato. Il secondo parametro di 'ExecuteAsync' è un 'Action' quindi non può usare 'return' in esso. –
nemesv
Mi spiace, ho corretto l'esempio, per favore provalo ora (e per favore nota: i metodi sono asincroni, quindi non puoi restituirlo direttamente, a meno che non usi l'attività Async .NET) –
Qualcuno potrebbe aiutarmi utilizzare l'ExecuteAndGetMyClass? –