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 plusieurs avantages significatifs concernant les 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 des messages à l'aide de HTTP, mais aussi du protocole TCP (Transmission Control Protocol), des canaux nommés et de MSMQ (Microsoft Message Queuing). Plus important, 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 des expéditeurs aux récepteurs et via un nombre illimité d'intermédiaires, une visionneuse de suivi, la journalisation des messages, un nombre importants de compteurs de performance, et assure la prise en charge de WMI (Windows Management Instrumentation).
Étant donné les avantages potentiels de WCF par rapport aux services Web ASP.NET, si vous utilisez, ou envisagez d'utiliser des services Web ASP.NET, vous avez plusieurs options :
- Continuer à utiliser des services Web ASP.NET et renoncer aux avantages offerts par WCF.
- Continuer à utiliser des services Web ASP.NET dans l'intention d'adopter WCF ultérieurement. Les rubriques de cette section expliquent comment optimiser vos chances de pouvoir utiliser les nouvelles applications de service 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, si la sécurisation des services est importante, ou que des garanties de fiabilité ou de transaction sont exigées, ou si la construction de fonctionnalités de gestion personnalisée est nécessaire, alors il est préférable d'adopter WCF. WCF est spécialement conçu pour ce type de scénarios.
- Adopter WCF pour un nouveau développement, tout en continuant à gérer vos applications de service Web ASP.NET existantes. Ce choix est très probablement le plus optimal. Il offre les avantages de WCF, tout en économisant le coût de la 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 pourront utiliser les services Web ASP.NET existants, et WCF permettra de programmer de nouvelles fonctionnalités opérationnelles dans les applications ASP.NET existantes du fait du mode de compatibilité ASP.NET WCF.
- Adopter WCF et migrer les applications 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.
Remarque : |
---|
Soyez prudent si un service WCF est hébergé par IIS 5.x et que 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 avec l'extension .svc est considéré comme un fichier texte et le contenu, y compris tout code source, est retourné au demandeur. |
Cette section décrit ces options en détail, compare des 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
Concepts
Anticipation de l'adoption de Windows Communication Foundation : faciliter la future migration
Anticipation de l'adoption de Windows Communication Foundation : faciliter l'intégration future
Adoption de Windows Communication Foundation
Comparaison des services Web ASP.NET et de WCF en fonction de l'objectif et des normes utilisées
Comparaison des services Web ASP.NET et de WCF du point de vue du développement