Migración de los servicios web ASP.NET a WCF
ASP.NET proporciona bibliotecas de clases de .NET Framework y herramientas para generar servicios web, así como los medios para hospedar los servicios dentro de Internet Information Services (IIS). Windows Communication Foundation (WCF) proporciona bibliotecas de clases de .NET Framework, herramientas y medios para el alojamiento para permitir la comunicación de las entidades de software utilizando cualquier protocolo, incluso aquéllos utilizados por los servicios web. Migrar los servicios web de ASP.NET a WCF permite que las aplicaciones saquen el máximo partido a las nuevas características y mejoras que son exclusivas de WCF.
WCF cuenta con varias ventajas importantes relacionadas con los servicios web de ASP.NET. Mientras que las herramientas de estos servicios sólo sirven para crear servicios web, WCF proporciona herramientas que pueden utilizarse cuando se deben crear entidades de software para comunicarse entre ellas. Esto reducirá el número de tecnologías que deben conocer los desarrolladores para adaptarse a distintos escenarios de comunicación de software, que a su vez reducirán el coste de los recursos de desarrollo de software y el tiempo para finalizar los proyectos de desarrollo de software.
Incluso para los proyectos de desarrollo de los servicios web, WCF admite más protocolos de servicios web que los admitidos por los servicios web de ASP.NET. Estos protocolos adicionales proporcionan más soluciones sofisticadas, como sesiones y transacciones confiables, entre otras.
WCF admite más protocolos para transportar mensajes que los servicios web de ASP.NET. Los servicios web de ASP.NET sólo admiten el envío de mensajes utilizando el Protocolo de transferencia de hipertexto (HTTP). WCF permite enviar mensajes mediante HTTP, además del Protocolo de control de transmisión (TCP), canalizaciones con nombre y Message Queue Server de Microsoft (MSMQ). Y lo que es más importante, WCF puede extenderse para admitir protocolos de transporte adicionales. Por consiguiente, el software desarrollado con WCF puede adaptarse para trabajar con una amplia variedad de otro software, con lo que se aumenta la devolución potencial de la inversión.
WCF proporciona medios con más funciones para implementar y administrar las aplicaciones que los servicios web de ASP.NET proporcionan. Además de un sistema de configuración, que ASP.NET también tiene, WCF proporciona un editor de configuración, seguimiento de actividades desde remitentes a receptores y de vuelta a través de intermediarios, un visor de seguimiento, registro de mensajes, un inmenso número de contadores de rendimiento y compatibilidad con el Instrumental de administración de Windows (WMI).
Dados estos beneficios potenciales de WCF relacionados con los servicios web de ASP.NET, si está utilizando, o está pensando en utilizar los servicios web de ASP.NET, tiene varias opciones:
- Continúe utilizando los servicios web de ASP.NET y prescinda de las ventajas ofrecidas por WCF.
- Siga utilizando los servicios web de ASP.NET con la intención de adoptar en algún momento WCF en el futuro. Los temas en esta sección explican cómo maximizar las perspectivas para poder utilizar las nuevas aplicaciones de servicio web ASP.NET junto con las aplicaciones WCF futuras. Los temas en esta sección también explican cómo generar los nuevos servicios web de ASP.NET para facilitar su migración a WCF. Sin embargo, si proteger los servicios es importante, si son necesarias garantías de confiabilidad o transacción, o si tendrán que construirse medios de administración personalizados, lo más adecuado es adoptar WCF. WCF está diseñado precisamente para tales escenarios.
- Adopte WCF para el nuevo desarrollo, mientras continúa manteniendo las aplicaciones de servicios web de ASP.NET existentes. Es muy probable que esta opción sea la óptima. Cuenta con las ventajas de WCF mientras se ahorra el coste de modificar las aplicaciones existentes para usarlo. En este escenario, las nuevas aplicaciones de WCF pueden coexistir con aplicaciones ASP.NET anteriores. Las nuevas aplicaciones de WCF podrán utilizar servicios web de ASP.NET existentes. Además, WCF puede utilizarse para programar nuevas capacidades operativos en aplicaciones de ASP.NET existentes según el modo de compatibilidad de ASP.NET de WCF.
- Adopte WCF y migre las aplicaciones de servicios web de ASP.NET existentes a WCF. Puede elegir esta opción para mejorar las aplicaciones existentes con características proporcionadas por WCF o para reproducir la funcionalidad de los servicios web de ASP.NET existentes dentro de nuevas aplicaciones de WCF más potentes.
Nota
Se debe tener cuidado si IIS 5.x hospeda un servicio WCF y se desinstala ASP.NET. Cuando IIS 5.x hospeda un servicio WCF, se puede solicitar el código para el servicio si se desinstala ASP.NET. Cuando ASP.NET se desinstala en un sistema operativo que está ejecutando IIS 5.x y se desinstala WCF, se considerará un archivo de texto un archivo con la extensión .svc y el contenido, incluido cualquier código fuente, se devuelve al solicitante.
Esta sección describe en detalle estas opciones, compara los servicios web de ASP.NET con WCF y proporciona las instrucciones sobre cómo migrar el código de los servicios web de ASP.NET a WCF.
Consulte también
Conceptos
Anticipación de la adopción de Windows Communication Foundation: cómo facilitar la futura migración
Anticipación de la adopción de Windows Communication Foundation: cómo facilitar la futura integración
Adoptación de Windows Communication Foundation
Comparación de los servicios web ASP.NET con WCF basado en el propósito y las normas utilizadas
Comparación de los servicios web ASP.NET con el WCF basado en desarrollo