2010-04-07 4 views
0

J'ai une application ASP.net qui consomme actuellement des services Web SOAP. Cette plate-forme est destinée à .net 2.0 et j'utilise Visual Studio Professional 2005 pour le maintenir. J'ai maintenant une exigence de consommer un certain nombre de service Web reposant au sein de la même application.Est-ce que WCF rend la consommation de services Web Restful trivial?

est la consommation de services RESTful Web avec WCF si trivial, par rapport à l'utilisation HttpClient qu'il vaut le coût et le temps de mise à niveau vers Visual Studio 2008 et .Net Framework 3.5

Répondre

5

Je ne découragerais jamais quiconque de mettre à niveau vers VS2008 et .Net 3.5, cependant, je n'encouragerais jamais quiconque à utiliser WCF sur le client pour communiquer avec un point de terminaison HTTP.

Je vous recommande fortement de consulter la bibliothèque cliente HTTP disponible dans le WCF REST Starter Kit. Cette bibliothèque, malgré son nom, ne nécessite pas WCF ou .NET 3.5. Pour utiliser le Microsoft.Http.HttpClient vous avez seulement besoin de .net 2.0. Vous avez seulement besoin de 3.5 si vous utilisez la DLL Microsoft.Http.Extensions qui a des méthodes auxiliaires pour utiliser le sérialiseur DataContract et les flux de syndication. À mon avis, ne vous laissez pas tenter par DataContracts côté client pour les services à distance, c'est vraiment la queue qui remue le chien et vous allez en souffrir à long terme. Il y a quelques exemples de questions sur Stack Overflow de personnes qui ont du mal à obtenir que DataContracts produise le XML exact dont un service a besoin.

0

Voici un lien indiquant ce qu'il faut faire.

http://blogs.msdn.com/pedram/archive/2008/04/21/how-to-consume-rest-services-with-wcf.aspx

Je mise à niveau, car ils ont mis des choses en place pour faciliter votre travail. La mise à niveau vers la version 3.5 vous donne également d'autres avantages par rapport à la version 2.0. Vous n'obtenez pas seulement des composants REST, mais d'autres choses comme LINQ, des méthodes d'extension, etc ...

Rappelez-vous que vous n'avez pas besoin d'un nouvel environnement d'exécution pour utiliser .net 3.5, donc si vous ne pouvez absolument pas installer 3.5 sur le serveur, vous pouvez inclure les assemblages 3.5 quand vous le déployez et cela devrait fonctionner.

Questions connexes