Próbowałem stworzyć prostą prototypową aplikację internetową, która używa RestSharp do wywołania Rest API.
Nie udało mi się znaleźć ani jednego dobrego przykładu. Czy ktoś mógłby udostępnić i skierować mnie do odpowiedniego źródła? Spojrzałem już na następujące i nie podaje tego, czego szukam, tj. W pełni funkcjonalny przykład:
http://restsharp.org/ (nie ma pełnej aplikacji z przykładem)
http://www.stum.de/2009/12/22/using-restsharp-to-consume-restful-web-services/ (wydaje się być stara)
Podczas prototypowania otrzymuję poniższy błąd dla kodu poniżej:
RestResponse response = client.Execute(request);
*Cannot implicitly convert type 'IRestResponse' to 'RestResponse'. An explicit conversion exists (are you missing a cast?) *
Odpowiedzi:
Udało mi się znaleźć wpis na blogu na ten temat, który prowadzi do projektu open source, który implementuje RestSharp. Mam nadzieję, że okaże się pomocna.
http://dkdevelopment.net/2010/05/18/dropbox-api-and-restsharp-for-ac-developer/ Wpis na blogu jest partnerem 2, a projekt jest tutaj: https://github.com/ dkarzon / DropNet
Może pomóc, gdybyś miał pełny przykład tego, co nie działa. Trudno jest uzyskać kontekst dotyczący konfiguracji klienta, jeśli nie dostarczysz kodu.
źródło
Paweł Sawicz .NET blog ma naprawdę dobre objaśnienie i przykładowy kod, wyjaśniający, jak wywołać bibliotekę;
OTRZYMAĆ:
var client = new RestClient("192.168.0.1"); var request = new RestRequest("api/item/", Method.GET); var queryResult = client.Execute<List<Items>>(request).Data;
POCZTA:
var client = new RestClient("http://192.168.0.1"); var request = new RestRequest("api/item/", Method.POST); request.RequestFormat = DataFormat.Json; request.AddBody(new Item { ItemName = someName, Price = 19.99 }); client.Execute(request);
USUNĄĆ:
var item = new Item(){//body}; var client = new RestClient("http://192.168.0.1"); var request = new RestRequest("api/item/{id}", Method.DELETE); request.AddParameter("id", idItem); client.Execute(request)
Strona RestSharp GitHub zawiera dość wyczerpujący przykład w połowie strony. Aby rozpocząć, zainstaluj pakiet RestSharp NuGet w swoim projekcie, a następnie uwzględnij w kodzie niezbędne odwołania do przestrzeni nazw, a powyższy kod powinien działać (prawdopodobnie negując potrzebę pełnej przykładowej aplikacji).
źródło
The type or namespace name 'List<>' could not be found
The type or namespace name 'Items' could not be found
Wymiana pieniędzy
do
pracował dla mnie.
źródło
var response = client.Execute(request) as RestResponse;
response.Data
ponieważ robię to, wvar response = Client.Execute<List<Skill>>(request);
którym zwracam,return response.Data;
więc dla mnie właściwie już używam IRestResponse z var, ponieważ gdybym był wyraźny, byłby toIRestResponse<List<Skill>>
odpowiedź - w przeciwnym razie odpowiedź jest poprawna! tylko dodanie komentarza