Utilización de enlaces para configurar servicios y clientes

Los enlaces son los objetos que especifican los datos de comunicación exigidos para conectar a un punto de conexión. Más específicamente, los enlaces contienen información de configuración utilizada para crear el cliente o servicio en tiempo de ejecución mediante la definición de las características de transportes, formatos de la conexión (codificación de mensajes) y protocolos que se utilizarán en el punto de conexión respectivo o canal de cliente. Para crear un servicio de Windows Communication Foundation (WCF) que funcione, cada punto de conexión del servicio requiere un enlace. Este tema explica qué enlaces son, cómo se definen, y cómo se especifica un enlace determinado para un punto de conexión.

Qué define un enlace

La información de un enlace puede ser muy básica o muy compleja. El enlace más básico especifica solo el protocolo de transporte (como HTTP) que se debe utilizar para conectar al extremo. Más generalmente, la información que contiene un enlace sobre cómo conectarse a un extremo queda incluida en una de las categorías de la tabla siguiente.

Protocolos
Determina el mecanismo de seguridad utilizado, función de la mensajería de confianza o configuración de flujo de contexto de transacción.

Transporte
Determina el protocolo de transporte subyacente que se utilizará (por ejemplo, TCP o HTTP).

Encoding
Determina la codificación del mensaje, por ejemplo, texto/XML, binario o Mecanismo de optimización de transmisión del mensaje (MTOM), que determinan cómo se representan los mensajes como secuencias de bytes en la conexión.

Enlaces proporcionados por el sistema

WCF incluye un conjunto de enlaces proporcionados por el sistema que están diseñados para cubrir la mayoría de los escenarios y requisitos de aplicación. Las clases siguientes representan algunos ejemplos de enlaces proporcionados por el sistema:

  • BasicHttpBinding: Un enlace de protocolo HTTP conveniente para conectar a los Servicios Web que cumple a la especificación del WS-I Basic Profile 1.1 (por ejemplo, servicios web ASP.NET [ASMX] - servicios basados).

  • WSHttpBinding: Un enlace de protocolo HTTP conveniente para conectar a los extremos que cumplen con los protocolos de especificaciones de servicios Web.

  • NetNamedPipeBinding: utiliza la codificación binaria de .NET y las tecnologías de trama junto con el transporte de canalización con nombre de Windows para conectarse a otros puntos de conexión WCF en la misma máquina.

  • NetMsmqBinding: utiliza la codificación binaria de .NET y las tecnologías de trama junto con Message Queuing (también conocido como MSMQ) para crear conexiones de mensajes en cola con otros puntos de conexión WCF.

Para obtener una lista completa de enlaces proporcionados por el sistema, con su descripción, consulte Enlaces proporcionados por el sistema.

Enlaces personalizados

Si la colección de enlaces proporcionada por el sistema no tiene la combinación correcta de características que necesita una aplicación de servicio, puede crear un enlace CustomBinding. Para obtener más información sobre los elementos de un enlace CustomBinding, consulte <customBinding> y Enlaces personalizados.

Utilizar los enlaces

El uso de enlaces conlleva dos pasos básicos:

  1. Seleccione o defina un enlace. El método más fácil es elegir uno de los enlaces proporcionados por el sistema y utilizar su configuración predeterminada. Puede elegir también un enlace proporcionado por el sistema y restablecer sus valores de propiedad para satisfacer sus necesidades También puede crear un enlace personalizado y establecer las propiedades como necesite.

  2. Cree un punto de conexión que utiliza este enlace.

Código y configuración

Puede definir o configurar los enlaces a través del código o configuración. Estos dos enfoques son independientes según el tipo de enlace utilizado, por ejemplo, si utiliza un enlace proporcionado por el sistema o un enlace CustomBinding. En general, el uso de código proporciona un control total sobre la definición de un enlace cuando se compila. Por otro lado, el uso de configuración permite al administrador del sistema o al usuario de un servicio o cliente WCF cambiar los parámetros de los enlaces. Esta flexibilidad es a menudo deseable, porque no hay ninguna manera de predecir los requisitos específicos de la máquina ni las condiciones de red en las que se implementará una aplicación WCF. Separar la información de enlace (y direccionamiento) del código permite a los administradores cambiar los datos obligatorios sin tener que recompilar o implementar de nuevo la aplicación. Tenga en cuenta que si el enlace se define en código, sobrescribe las definiciones basadas en configuración realizadas en el archivo de configuración. Para obtener ejemplos de estos enfoques, consulte los temas siguientes:

Consulte también