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 extremo. 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 extremo respectivo o canal de cliente. Para crear un servicio Windows Communication Foundation (WCF) en funcionamiento, cada extremo del servicio exige un enlace. Este tema explica qué enlaces son, cómo se definen, y cómo se especifica un enlace determinado para un extremo.

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 sólo 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).
  • Codificación
    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.

Enlace proporcionado 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 requisitos de aplicación y escenarios. 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 .NET y las tecnologías de trama junto con el transporte de canalización con nombre de Windows para conectar a otros extremos WCF en el mismo equipo.
  • NetMsmqBinding: Utiliza la codificación binaria .NET y las tecnologías de trama junto con el Message Queue Server (también conocido como MSMQ) para crear las conexiones de mensaje en cola con otros extremos WCF.

Para obtener una lista completa de enlaces proporcionados por el sistema, con descripciones, consulte Enlaces proporcionados por el sistema.

Enlaces personalizados

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

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 extremo 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. El uso de configuración, por otro lado, permite al administrador del sistema o al usuario de un servicio WCF o cliente cambiar los parámetros de enlaces. Esta flexibilidad es a menudo deseable porque no hay ninguna manera de predecir los requisitos específicos del equipo y las condiciones de red en la cual 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 volver a compilar 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

Tareas

Cómo: Especificar un enlace de servicio en la configuración
Cómo: Especificar un enlace de servicio en el código
Cómo: Especificar un enlace de cliente en la configuración
Cómo: Especificar un enlace de cliente en el código

Conceptos

Información general acerca de la creación de puntos finales