Différence clé: un service Web peut être décrit comme un système de composants logiciels disponibles sur Internet. Il comprend des protocoles et des normes utilisés pour l'échange de données. Ainsi, il facilite l’échange interopérable de données entre des machines sur un réseau. WCF signifie Windows Communication Foundation. Il peut être décrit comme un framework permettant de créer des applications orientées services. Il fournit un environnement d'exécution pour les services. Les "services Web" de la WCF font partie d'un spectre beaucoup plus large que celui des services Web.
- Orientation service - L'accent est mis sur la création d'applications orientées service.
- Interopérabilité - Les normes industrielles les plus récentes sont mises en œuvre pour l'interopérabilité des services Web.
- Modèles de messages multiples - De nombreux modèles sont disponibles pour l’échange de messages.
- Métadonnées de service - Des formats tels que les schémas WSDL et XML sont utilisés afin de prendre en charge les métadonnées de service de publication.
- Sécurité - Des fonctionnalités de sécurité telles que le cryptage et l'authentification sont disponibles.
- Message durable - Un message d'un motif durable est toujours enregistré dans une base de données.
- Prise en charge AJAX et REST
- Extensibilité - Il offre une extensibilité dans divers domaines tels que l'extension des liaisons, la couche de canal, serviceHost, etc.
Afin de comparer les services Web aux services WCF, il est possible de déterminer la différence entre les services Web ASP.net et WCF.
Comparaison entre les services Web et WCF dans ASP.net:
Services Web | WCF | |
Définition | Un service Web peut être décrit comme un système de composants logiciels disponibles sur Internet. Il comprend des protocoles et des normes utilisés pour l'échange de données. Ainsi, il facilite l’échange interopérable de données entre des machines sur un réseau. | WCF signifie Windows Communication Foundation. Il peut être décrit comme un framework permettant de créer des applications orientées services. Il fournit un environnement d'exécution pour les services. |
Accessibilité | Rigide - Les services Web ne sont accessibles que via HTTP | Flexible |
Format de fichier / extension | .asmx en tant qu'extension de fichier | .svc en tant qu'extension de fichier |
La sérialisation | L'espace de nom System.Xml.serialization est utilisé pour la sérialisation | L'espace de noms System.Runtime.Serialization est utilisé pour la sérialisation |
Exceptions non gérées | Renvoyé au client en tant qu'erreur SOAP | Non renvoyé aux clients en tant que défauts SOAP |
Développement client | Fait en utilisant un outil de ligne de commande WSDL.EXE | Fait en utilisant le ServiceMetadatatool |
Codage | XML1.0, MTOM (mécanisme d’optimisation de la transmission de messages), DIME (encapsulation directe de messages Internet) | XML1.0, MTOM, binaire |
Développement de service | Il a été obligatoire d'ajouter l'attribut WebService à une classe et le WebMethodAttribute à l'une des méthodes de cette classe devant être des opérations du service. | Les points finaux doivent être définis (un ou plusieurs) |
Représentation du message | La personnalisation des en-têtes des messages SOAP peut être effectuée. | Les attributs, MessageContractAttribute, MessageHeaderAttribute et MessageBodyMemberAttribute sont fournis pour expliquer la structure des messages SOAP. |