502 votes

API Web WCF vs ASP.NET

J'ai passé quelques mois à essayer de saisir les concepts de base de la WCF et récemment, j'ai développé mon premier service WCF application.
J'ai galéré un peu pour comprendre tous les paramètres dans le fichier de configuration.
Je ne suis pas convaincu sur l'environnement, mais il semble que vous pouvez faire des choses incroyables avec elle.
L'autre jour, j'ai trouvé que Microsoft a sorti un nouveau truc qui s'appelle ASP.NET l'API Web.
Pour ce que je peux lire c'est un cadre Reposant, très facile à utiliser et à mettre en œuvre.
Maintenant, je suis à essayer de comprendre quelles sont les principales différences entre les 2 cadres et si je devrais l'essayer et de le convertir mon "vieux" service WCF application avec la nouvelle API.

Quelqu'un pourrait-il, s'il vous plaît, aidez-moi à comprendre les différences et de l'utilisation de chacun?

253voto

Manish Jain Points 1505

Pour nous, WCF est utilisé pour SOAP et Web API pour reste. Je souhaite que Web API prises en charge SOAP trop. Nous n’utilisons pas les fonctionnalités avancées de WCF. Voici la comparaison de MSDN:

enter image description here

192voto

marcind Points 38002

La nouvelle ASP.NET Web API est une continuation de la précédente WCF API Web du projet (bien que certains de ces concepts ont changé).

La WCF a été créé à l'origine pour permettre de SAVON à base de services. Pour de plus simple Reposante ou RPCish services (pensez à des clients comme jQuery) ASP.NET l'API Web devrait être le bon choix.

80voto

Naveen Points 2480

ASP.net l'API Web est tout au sujet de HTTP et REST GET,POST,PUT,DELETE avec bien savoir ASP.net MVC style de programmation et de JSON consignés; web API est pour tous la lumière du poids et de pure HTTP base de composants. Pour un à aller de l'avant avec WCF, même pour les simples ou les plus simples seul service web, il apportera tous les bagages supplémentaires. Pour poids léger service simple d'ajax ou de la dynamique des appels toujours WebApi seulement résout le besoin. Cette parfaitement complémentaires ou de l'aide dans la parallèle à la ASP.net MVC.

Découvrez le podcast : Hanselminutes Podcast 264 - Ce n'est pas votre père WCF - Tout sur le WebAPI avec Glenn Bloc par Scott, Hanselman pour plus d'informations.

69voto

Kris Points 313

Dans les scénarios ci-dessous, vous devriez aller pour la WCF:

  1. Si vous avez besoin d'envoyer des données sur des protocoles comme TCP, MSMQ ou MIME
  2. Si la consommation du client sait exactement comment consommer les messages SOAP

WEB API est un cadre pour le développement de RESTful/services HTTP.

Il ya tellement de nombreux clients qui ne comprennent pas de SAVON, comme les Navigateurs, HTML5, WEB Api sont un bon choix.

Services HTTP en-tête spécifie comment sécuriser le service, la façon de mettre en cache les informations, le type de corps du message et le corps HTTP pouvez spécifier n'importe quel type de contenu comme le langage HTML n'est pas juste du XML comme des services SOAP.

34voto

tridy Points 61

WCF vous donnera tellement de la boîte, il n’est pas encore comparable à quoi que ce soit. Sauf si vous voulez faire sur votre propre implémentation de (pour n’en nommer que quelques-uns) authentification, autorisation, cryptage, queuing, limitation, messagerie fiable, journalisation, sessions et ainsi de suite. WCF n’est pas [seulement] web services ; WCF est une plateforme de développement pour SOA.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X