Comment appeler de REPOS des services de Bibliothèque de classes Portable?
Ma cible les projets sont Windows 8, WinRT et Windows Phone 8. Je suis à l'aide des Bibliothèques de classes pour la solution, afin de partager les sources.
J'ai besoin d'appeler à un peu de REPOS des services créés dans un autre MVC, Web Api projet, mais HttpClient
classe n'est pas disponible dans le PCL.
Ce qui serait une bonne approche pour le résoudre?
Je pensais à une interface de service et ensuite de créer un projet pour chaque plate-forme, à l'aide de HttpClient
, WebClient
ou de la classe appropriée dans chaque cas. Cette approche pourrait fonctionner, mais je me demandais si il y a d'autres façons.
Vous devez vous connecter pour publier un commentaire.
HttpClient n'est pas forcément portable à partir de Microsoft de vue. La seule autre façon est de créer des bibliothèques distinctes que chaque projet devra mettre en place, et de faire ce que vous avez décrit. De cette façon, vous pouvez obtenir des points en commun entre toutes les plates-formes que vous désirez cibler.
Je pensais qu'il y avait un certain niveau d'équivalence lorsqu'il s'agit de plates-formes que vous ciblez... Si vous disposez de plusieurs projets, vous pouvez lier vos fichiers de code pour l'autre projet de sorte que vous n'avez pas à gérer de multiples projets, ou même utiliser Projet De L'Éditeur De Liens (même si je ne sais pas si une version 2012 existe).
Microsoft a réécrit le
HttpClient
de la bibliothèque pour être portable (PCL) et c'est ici sur NuGet.Pour le moment, il est seulement disponible en pré-version, donc si vous êtes à l'aide de la NuGet package GUI gestionnaire assurez-vous d'Inclure Préliminaire".à Partir de la ligne de commande:Portable RESTE est récemment devenu disponible sur GitHub, et devrait aider à faire des demandes sur le web étant donné que le Service est indisponible:
https://github.com/advancedrei/PortableRest#readme
Assez tard, mais voici un code simple que j'avais à faire, PLC est la cible de tout, sauf de la XBox 360 ( pourrait fonctionner aussi ). Je ne pouvais pas utiliser HttpClient pour cette liste cible.