Services Web vs WCF
Les services Web et WCF sont des technologies Web développées par Microsoft. Les services Web ont été introduits dans les versions antérieures de .Net, tandis que WCF a été ajouté à .Net Framework dans les versions ultérieures. Les services Web sont utilisés pour créer des applications qui peuvent envoyer / recevoir des messages à l'aide de SOAP via HTTP. WCF est destiné à construire des applications distribuées pour échanger des messages à l'aide de savon sur n'importe quel protocole de transport.
Services Web
Un service Web (parfois connu sous le nom de technologie ASMX dans .Net) est une méthode de communication sur le réseau. Selon W3C, un service Web est un système dédié à la prise en charge des transactions de machine à machine sur un réseau. Il s'agit d'une API Web décrite dans WSDL (Langue de description du service Web) et les services Web sont généralement autonomes et auto-décrits. Les services Web peuvent être découverts à l'aide du protocole UDDI (description universelle, découverte et intégration). En échangeant des messages de savon (protocole d'accès d'objets simples) généralement via HTTP (avec XML), d'autres systèmes peuvent interagir avec les services Web. Les services Web sont utilisés de plusieurs façons tels que RPC (appels de procédure à distance), SOA (architecture orientée vers le service) et REST (transfert d'état de représentation). Il existe deux méthodologies de conception automatisées pour développer des services Web. L'approche ascendante traite d'abord de la création des classes, puis de l'utilisation d'outils de génération WSDL pour composer ces classes en tant que services Web. L'approche descendante traite de la définition des spécifications WSDL, puis de l'utilisation d'outils de génération de code pour générer les classes correspondantes. Les services Web ont deux usages majeurs. Ils peuvent être utilisés comme composants d'application réutilisables et / ou pour connecter des applications Web exécutées sur différentes plates-formes.
WCF
WCF (Windows Communication Foundation) est un .API NET (interface de programmation d'application), qui fournit un modèle de programmation unifié pour développer des applications connectées et axées sur le service. Plus précisément, il est utilisé pour développer et déployer des applications distribuées avec SOA. SOA traite de l'informatique distribuée dans laquelle les consommateurs consomment des services. Plusieurs consommateurs peuvent consommer un seul service et vice versa. WCF prend en charge les normes de service Web avancées telles que WS-Addressing, WS-Reliveletsaging, WS-Security et RSS Syndication (disponible après .Net 4.0). Un client WCF utilise un point final pour se connecter à un service WCF. Chaque service peut avoir plusieurs critères de terminaison exposant son contrat. Le terme ABC est utilisé pour se référer à l'adresse / liaison / contrat du service WCF. La communication entre les clients et les services est effectuée via des enveloppes de savon.
Quelle est la différence entre les services Web et WCF?
Il existe des différences clés entre les services Web et les services WCF. Les services Web sont utilisés pour créer des applications qui peuvent envoyer / recevoir des messages en utilisant SOPA sur HTTP. Cependant, WCF est destiné à créer des applications distribuées pour échanger des messages à l'aide de savon et de tout protocole de transport comme HTTP, TCP, Pipes nommés et Microsoft Message Fileing (MSMQ), etc. De plus, WCF peut être étendu pour travailler avec tout autre protocole de transport. Bien que les services Web soient très simples et faciles à mettre en œuvre, WCF est architectural plus robuste que le service Web. Les services Web ne peuvent être hébergés que dans IIS et la sécurité est limitée. Mais le WCF peut être hébergé dans IIS, serveurs d'auto-hôte avec des applications de console ou des services GAGNE ou tout autre serveur. De plus, contrairement aux services Web, WCF prend en charge Binary .FILET - .Communications nettes, transactions distribuées, spécifications WS- *, messagerie en file d'attente et communications reposantes.