Partager via


Migration des services Web ASP.NET vers WCF

ASP.NET fournit des bibliothèques de classes .NET Framework et des outils permettant de générer des services Web, ainsi que des fonctionnalités d'hébergement des services dans les services IIS (Internet Information Services). Windows Communication Foundation (WCF) fournit des bibliothèques de classes .NET Framework, des outils et des fonctionnalités d’hébergement permettant aux entités logicielles de communiquer à l’aide de n’importe quel protocole, y compris ceux utilisés par les services web. La migration des services web ASP.NET vers WCF permet à vos applications de tirer parti des nouvelles fonctionnalités et améliorations propres à WCF.

WCF offre des avantages significatifs par rapport aux services web ASP.NET. Alors que les outils de services web ASP.NET sont uniquement conçus pour générer des services web, WCF fournit des outils qui permettent aux entités logicielles de communiquer les unes avec les autres. Cela réduira le nombre de technologies que les développeurs sont tenus de connaître pour s'adapter aux différents scénarios de communication logicielle, ce qui, en conséquence, réduira le coût des ressources de développement logiciel, ainsi que le délai de réalisation des projets de développement logiciel.

Même pour les projets de développement de services web, WCF prend en charge davantage de protocoles de services web que les services web ASP.NET. Ces protocoles supplémentaires offrent des solutions plus sophistiquées impliquant, entre autres, des transactions et des sessions fiables.

WCF prend en charge davantage de protocoles de transport de messages que les services web ASP.NET. Les services Web ASP.NET prennent uniquement en charge l'envoi de messages à l'aide du protocole HTTP (Hypertext Transfer Protocol). WCF prend en charge l’envoi de messages à l’aide de HTTP, ainsi que le protocole TCP (Transmission Control Protocol), les canaux nommés et Microsoft Message Queuing (MSMQ). Plus important encore, WCF peut être étendu afin de prendre en charge d’autres protocoles de transport. Par conséquent, les logiciels développés à l’aide de WCF peuvent être adaptés afin de fonctionner avec une gamme plus vaste d’autres logiciels, et augmenter ainsi le retour potentiel sur investissement.

WCF fournit des fonctionnalités de déploiement et de gestion des applications beaucoup plus complètes que les services web ASP.NET. Outre un système de configuration, dont dispose également ASP.NET, WCF offre un éditeur de configuration, le suivi des activités entre expéditeurs et destinataires en passant par un nombre illimité d’intermédiaires, une visionneuse de suivi, la journalisation des messages, un grand nombre de compteurs de performances, et assure la prise en charge de WMI (Windows Management Instrumentation).

Compte tenu de ces avantages potentiels de WCF par rapport aux services web ASP.NET, si vous utilisez ou envisagez d’utiliser les services web ASP.NET, vous disposez de plusieurs options :

  • Continuer à utiliser des services web ASP.NET et renoncer aux avantages offerts par WCF.

  • Continuer à utiliser les services web ASP.NET avec l’intention d’adopter WCF ultérieurement. Les rubriques de cette section expliquent comment optimiser les perspectives d’utilisation des nouvelles applications de services web ASP.NET avec les futures applications WCF. Les rubriques de cette section expliquent également comment générer de nouveaux services web ASP.NET afin de simplifier leur migration vers WCF. Cependant, s’il est important de bien sécuriser les services, si des garanties de fiabilité ou de transaction sont exigées, ou encore si des fonctionnalités de gestion personnalisées doivent être créées, il est préférable d’adopter WCF. WCF est précisément conçu pour les scénarios de ce type.

  • Adoptez WCF pour vos nouveaux développements, tout en conservant vos applications de service web ASP.NET existantes. Ce choix est très probablement le plus optimal. Il permet de bénéficier des avantages de WCF, tout en évitant les frais de modification des applications existantes pour l’utiliser. Dans ce scénario, les nouvelles applications WCF peuvent coexister avec les applications ASP.NET existantes. Les nouvelles applications WCF peuvent utiliser les services web ASP.NET existants, et WCF peut être utilisé pour programmer de nouvelles fonctionnalités opérationnelles dans les applications ASP.NET existantes grâce au mode de compatibilité WCF ASP.NET.

  • Adoptez WCF et migrez les applications de service web ASP.NET existantes vers WCF. Vous pouvez choisir cette option pour améliorer les applications existantes à l’aide des fonctionnalités fournies par WCF, ou reproduire les fonctionnalités des services web ASP.NET existants dans de nouvelles applications WCF plus performantes.

Notes

Soyez prudent si un service WCF est hébergé par IIS 5.x et qu’ASP.NET est désinstallé. Lorsqu’un service WCF est hébergé par IIS 5.x, le code du service peut être demandé si ASP.NET est désinstallé. Lorsque ASP.NET est désinstallé sur un système d’exploitation qui exécute IIS 5.x et que WCF est désinstallé, un fichier portant l’extension .svc est considéré comme un fichier texte et le contenu, y compris tout code source, est renvoyé au demandeur.

Cette section décrit ces options en détail, compare les services web ASP.NET à WCF, et fournit des instructions sur la procédure de migration du code de vos services web ASP.NET vers WCF.

Voir aussi