La Windows Communication Foundation ( WCF ), anteriormente conocida como Indigo , es un entorno de ejecución gratuito y de código abierto y un conjunto de API en .NET Framework para crear aplicaciones conectadas y orientadas a servicios . [ 1 ] [ 2 ]
.NET Core 1.0 , lanzado en 2016, no admitía código del lado del servidor WCF. La compatibilidad con WCF se agregó a la plataforma con soporte para .NET Core 3.1, .NET 5 y .NET 6 en 2022. [ 3 ]
La arquitectura

WCF es una herramienta que se usa frecuentemente para implementar y desplegar una arquitectura orientada a servicios (SOA). Está diseñada con principios de arquitectura orientada a servicios para admitir la computación distribuida, donde los servicios tienen consumidores remotos . Los clientes pueden consumir varios servicios, y los servicios pueden ser consumidos por varios clientes. Los servicios están débilmente acoplados entre sí. Los servicios suelen tener una interfaz WSDL (Web Services Description Language) que cualquier cliente WCF puede usar para consumir el servicio, independientemente de la plataforma en la que esté alojado. WCF implementa muchos estándares avanzados de servicios web (WS), como WS-Addressing , WS-ReliableMessaging y WS-Security . Con el lanzamiento de .NET Framework 4.0, WCF también proporciona servicios de sindicación RSS , WS-Discovery , enrutamiento y mejor soporte para servicios REST .
Puntos finales
Un cliente WCF se conecta a un servicio WCF mediante un punto final . Cada servicio expone su contrato a través de uno o más puntos finales. Un punto final tiene una dirección (que es una URL que especifica dónde se puede acceder al punto final) y propiedades de enlace que especifican cómo se transferirán los datos.
El acrónimo "ABC" se puede usar para recordar la dirección , el enlace y el contrato . El enlace especifica qué protocolos de comunicación se utilizan para acceder al servicio, si se deben usar mecanismos de seguridad, etc. WCF incluye enlaces predefinidos para la mayoría de los protocolos de comunicación comunes, como SOAP sobre HTTP, SOAP sobre TCP y SOAP sobre colas de mensajes, etc. La interacción entre el punto final de WCF y el cliente se realiza mediante un sobre SOAP. Los sobres SOAP tienen un formato XML simple, lo que hace que WCF sea independiente de la plataforma. Cuando un cliente quiere acceder al servicio a través de un punto final, no solo necesita conocer el contrato, sino que también debe cumplir con el enlace especificado por el punto final. Por lo tanto, tanto el cliente como el servidor deben tener puntos finales compatibles.
Con el lanzamiento de .NET Framework 3.5 en noviembre de 2007, Microsoft lanzó un codificador que agregó soporte para el formato de serialización JSON a WCF. [ 4 ]
Comportamientos
Los comportamientos son tipos que modifican o extienden la funcionalidad del servicio o del cliente. Los comportamientos permiten al desarrollador crear procesamiento, transformación o inspección personalizados que se aplican a los mensajes a medida que se envían o reciben. Algunos ejemplos de usos de los comportamientos son:
- Controlar si los metadatos se publican con un servicio.
- Agregar características de seguridad a un servicio, como suplantación de identidad, autorización , [ 5 ] o gestión de tokens
- Registro de información sobre mensajes, como seguimiento, rastreo o registro de actividad.
- Validación de mensajes o parámetros
- Invocar todas las operaciones adicionales cuando se reciben mensajes, como notificar a los usuarios cuando llegan ciertos mensajes.
Los comportamientos implementan la IServiceBehaviorinterfaz para extensiones de servicio, IEndpointBehaviorpara puntos finales, IContractBehaviorpara contratos de servicio o IOperationBehaviorpara operaciones. Los comportamientos de servicio se utilizan para el procesamiento de mensajes en todo un servicio, en lugar de un procesamiento específico de una sola operación.
Interoperabilidad
WCF admite la interoperabilidad con aplicaciones WCF que se ejecutan en la misma máquina Windows o en máquinas Windows diferentes, así como con servicios web estándar basados en plataformas como Java que se ejecutan en Windows u otros sistemas operativos. Además de SOAP, WCF 4 admite formatos XML, RSS , JSON y binarios que no son SOAP para la comunicación externa a través de HTTP o HTTPS . [ 6 ]
Véase también
- Mejoras en los servicios web
- La Arquitectura de Componentes de Servicio (SCA) y los Objetos de Datos de Servicio (SDO) son alternativas a WCF en el mundo Java, estandarizadas por OASIS.
- Servicios de datos de WCF
Referencias
- ↑ Michele Leroux Bustamante. "Alojamiento de servicios WCF" . Revista CODE.
- ↑ "Implementación de un servicio WCF alojado en Internet Information Services" . Microsoft Developer Network (MSDN). 15 de septiembre de 2021.
- ↑ "CoreWCF 1.0 ha sido lanzado, WCF para .NET Core y .NET 5+" . Blog de .NET . 28 de abril de 2022. Consultado el 6 de junio de 2022 .
- ↑ "Integración de AJAX y compatibilidad con JSON" . Microsoft . Consultado el 24 de abril de 2008 .
- ↑ "Autenticación y autorización personalizadas en WCF" . TatvaSoft UK . Consultado el 14 de noviembre de 2018 .
- ↑ "Presentación de Windows Communication Foundation en .NET Framework 4" . Microsoft . Consultado el 17 de julio de 2011 .
- "¿Qué es Windows Communication Foundation?" . MSDN . Microsoft. 10 de agosto de 2023.
- Arquitectura de la plataforma de comunicación de Windows . MSDN . Microsoft. 15 de septiembre de 2021.
Lecturas adicionales
- Craig McMurtry, Marc Mercuri y Nigel Watling: Fundamentos de comunicación de Microsoft Windows: Práctica , SAMS Publishing, 26 de mayo de 2004, ISBN 0-672-32877-1
- Steve Resnick, Richard Crane, Chris Bowen: Fundamentos esenciales de la comunicación de Windows (WCF): Para .NET Framework 3.5 , Addison-Wesley, 11 de febrero de 2008, ISBN 0-321-44006-4
- Craig McMurtry, Marc Mercuri, Nigel Watling, Matt Winkler: Windows Communication Foundation Unleashed (WCF) , Sams Publishing, 6 de marzo de 2007, ISBN 0-672-32948-4
- Juval Löwy: Programación del servicio WCF , O'Reilly Media, Inc., 20 de febrero de 2007, ISBN 0-596-52699-7
- Pablo Cibraro, Kurt Claeys, Fabio Cozzolino, Johann Grabner: Professional WCF 4: Windows Communication Foundation with .NET 4 , Wrox, 15 de junio de 2010, ISBN 0-470-56314-1
- Andrew Zhu: Microsoft Windows Workflow Foundation 4.0 Cookbook: Capítulo 3 , Packt Publishing, septiembre de 2010, ISBN 978-1-84968-078-3
Enlaces externos
- Windows Communication Foundation , portal de MSDN Windows Communication Foundation.
- Biblioteca MSDN: Fundación de Comunicación de Windows
- Guía de seguridad de WCF archivada el 14 de marzo de 2011 en Wayback Machine , Patrones y prácticas de Microsoft: Mejora de la seguridad de los servicios web: Escenarios y guía de implementación para WCF. Publicada el 1 de agosto de 2008.
- Comprensión de los servicios WCF en Silverlight 2 Archivado el 12/03/2011 en Wayback Machine : explicación detallada de los servicios WCF para clientes Silverlight.
- David Chappell: "Introducción a la metodología WCF" y "Cómo abordar la diversidad" , dos artículos sobre la metodología WCF. Noviembre de 2007.
- Primeros pasos con los servicios de WCF RIA : primera parte de la serie de artículos sobre los servicios de WCF RIA.
- Terminología .NET
- Comunicación y servicios de Windows
- Software anteriormente propietario
- Software gratuito programado en C#
- Interfaces de programación de aplicaciones de Microsoft
- Software gratuito de Microsoft
- agente de solicitud de objetos
- Software que utiliza la licencia MIT.
- Windows Server 2008
- Windows Vista
- Servicios web
- Productos relacionados con la arquitectura orientada a servicios
- Software de 2006