web-dev-qa-db-fra.com

WCF vs ASP. API Web .Net

Quels sont les avantages et les inconvénients de l'utilisation de chaque technologie?

L'API Web WCF est maintenant fusionné dans Asp.net L'API Web Asp.net prend désormais en charge l'hébergement autonome.

J'imagine toujours que si je souhaitais exposer plusieurs schémas de protocole pour la même opération, je m'appuierais toujours vers WCF ou le point final de Mvc peut-il le faire aussi?

La nouvelle API web Asp.Net expose-t-elle également Wsdl? Si non, comment le client pourrait-il déterminer quelle opération lui est proposée?

On peut dire que la meilleure caractéristique de Mvc est le modèle. Quelle est la robustesse de l'équivalent WCF?

Alors, quelqu'un peut-il me dire quel est l'avantage de l'API Web Asp.net? WCF semble être le choix le plus puissant et le plus évolutif, imo. La seule chose que Mvc Web Api possède sur le modèle WCF est probablement la facilité de développement, mais cela signifie que s’accroupir si cela finit par constituer une sérieuse limitation de conception.

93
Alwyn

Tout d'abord, je vous suggère de lire mon article sur le sujet: http://blogs.Microsoft.co.il/blogs/idof/archive/2012/03/05/wcf-or-asp-net-web- apis-mon-deux-cents-sur-le-sujet.aspx

Concernant votre question WSDL - WebApi n’utilisant pas SOAP, elle n’exige pas de WSDL et n’en exporte pas. Vous pouvez utiliser Hypermedia pour renvoyer des ressources avec une liste d'URL d'activité possibles (considérez-la comme une ressource auto-descriptive).

72
IdoFlatow

Le choix dépend de ce que nous voulons faire.

  1. L'API Web ASP.NET est une structure permettant de créer des services non SOAP sur HTTP uniquement. Par conséquent, il n'y a plus de protocoles de transport disponibles avec cette infrastructure.
  2. WCF/Windows Communication Foundation est un cadre d’échange de messages SOAP. Nous utilisons ici de nombreux protocoles de transport: HTTP, TCP, canaux nommés, MSMQ, etc.

Je ne suis pas sûr de savoir lequel a de meilleures performances en ce qui concerne la quantité de données, peut-être WCF puisque nous pouvons utiliser des protocoles bas. Tous les commentaires sont appréciés.

15
Junior M

L'API Web WCF se concentre principalement sur les implémentations REST. Si vous configurez une implémentation REST, les bits WCF standard sont un peu pénibles à l'arrière-plan Si vous configurez des services RESTful, l’API Web WCF sera une expérience beaucoup plus agréable. Si vous configurez des services SOAP, l’API Web WCF n’est pas votre meilleur ami, et il vaut mieux utiliser WCF pour vos services.

8
Gregory A Beamer

Utilisez WCF pour les sites intranet/B2B n API Web pour les sites B2C/C2C/Internet ... SOAP/XML est toujours la norme pour la communication intra-entreprise n ça ne va pas disparaître !!!

0
A_Var