2010-10-25 6 views
13

Je construis une application Windows Phone 7 Silverlight. Y a-t-il une raison d'utiliser RestSharp au lieu de WebClient? J'ai regardé autour de moi sur le site RestSharp, mais les avantages ne sont pas immédiatement évidents.RestSharp v. WebClient?

+1

Le lecteur peut jeter un oeil à [différences entre RestSharp et ServiceStack] (http://stackoverflow.com/questions/10117376/) où le plomb de la pile de service et de l'utilisateur Runscope API Tools - l'ancien plomb de restsharp [1] (http://john-sheehan.com/blog/my -net-open-source-projet-gestion-cauchemar), [2] (http://haacked.com/archiv e/2013/09/18/restsharp-104-2-0-released.aspx) - donnez une recommandation sur ces deux options. – surfmuggle

+1

L'article http://www.diogonunes.com/blog/webclient-vs-httpclient-vs-httpwebrequest/ recommande HttpClient pour .Net 4.5+ –

Répondre

19

RestSharp supprime les points de douleur suivants:

  • Quirks dans les classes HTTP .NET (authentification de base est cassé, la gestion des erreurs pour les non-200 réponses, etc.)
  • désérialisation automatique à partir des données de réponse à Poços
  • API simplifiée (request.AddParameter(name, value) au lieu de compiler manuellement les organismes de demande
  • demande simplifiée/sémantique de réponse, en particulier pour async (cependant, il est opiniâtre pour async et ne peut pas répondre aux besoins de chacun, où ca se Je suggère également d'évaluer Hammock)

Désérialisation est probablement le plus grand gain puisque pour la plupart des API vous ne devez pas faire grand-chose pour obtenir le XML ou JSON dans vos objets C#.

Je voudrais vérifier ces pages pour plus d'infos

https://github.com/restsharp/RestSharp/wiki https://github.com/restsharp/RestSharp/wiki/RestSharp-Blog-Posts-and-Links

Ne hésitez pas à poster des questions ici ou sur la Google Group

+0

Ces liens sont morts. Avez-vous une chance de les mettre à jour? –

+0

Salut John, s'il vous plaît confirmer, peut Restsharp être utilisé dans le service Windows? Ou WinHttp la seule option? – ivorykoder