<ws2007HttpBinding>

Define un enlace interoperable que proporciona compatibilidad para las versiones correctas de los elementos de enlace Security, ReliableSession, y TransactionFlow.

<configuration>
  <system.serviceModel>
    <bindings>
      <ws2007HttpBinding>

Sintaxis

<ws2007HttpBinding>
  <binding allowCookies="Boolean"
           bypassProxyOnLocal="Boolean"
           closeTimeout="TimeSpan"
           hostNameComparisonMode="StrongWildCard/Exact/WeakWildcard"
           maxBufferPoolSize="integer"
           maxReceivedMessageSize="Integer"
           messageEncoding="Text/Mtom"
           name="string"
           openTimeout="TimeSpan"
           proxyAddress="URI"
           receiveTimeout="TimeSpan"
           sendTimeout="TimeSpan"
           textEncoding="UnicodeFffeTextEncoding/Utf16TextEncoding/Utf8TextEncoding"
           transactionFlow="Boolean"
           useDefaultWebProxy="Boolean">
    <reliableSession ordered="Boolean"
                     inactivityTimeout="TimeSpan"
                     enabled="Boolean" />
    <security mode="Message/None/Transport/TransportWithCredential">
      <transport clientCredentialType="Basic/Certificate/Digest/None/Ntlm/Windows"
                 proxyCredentialType="Basic/Digest/None/Ntlm/Windows"
                 realm="string" />
        <message clientCredentialType ="Certificate/IssuedToken/None/UserName/Windows"
                 negotiateServiceCredential="Boolean"
                 algorithmSuite="Basic128/Basic192/Basic256/Basic128Rsa15/Basic256Rsa15/TripleDes/TripleDesRsa15/Basic128Sha256/Basic192Sha256/TripleDesSha256/Basic128Sha256Rsa15/Basic192Sha256Rsa15/Basic256Sha256Rsa15/TripleDesSha256Rsa15"
                 establishSecurityContext="Boolean" />
    </security>
    <readerQuotas maxArrayLength="Integer"
                  maxBytesPerRead="Integer"
                  maxDepth="Integer"
                  maxNameTableCharCount="Integer"
                  maxStringContentLength="Integer" />
  </binding>
</ws2007HttpBinding>

Atributos y elementos

En las siguientes secciones se describen los atributos, los elementos secundarios y los elementos primarios.

Atributos

Atributo Descripción
allowCookies Un valor que indica si el cliente acepta las cookies y las propaga en solicitudes futuras. El valor predeterminado es false.

Puede utilizar esta propiedad al interactuar con los servicios Web ASP.NET (ASMX) que utilizan cookies. Esto garantiza que las cookies que el servidor devuelve se copian automáticamente en todas las solicitudes futuras de cliente para ese servicio.
bypassProxyOnLocal Un valor que indica si se omitirá el servidor proxy para las direcciones locales. El valor predeterminado es false.
closeTimeout Un valor TimeSpan que especifica el intervalo de tiempo del que dispone una operación de cierre para completarse. Este valor debe ser mayor o igual que Zero. El valor predeterminado es 00:01:00.
hostNameComparisonMode Especifica el modo de comparación del nombre del host HTTP usado para analizar los URI (Uniform Resource Identifier). Este atributo es del tipo HostNameComparisonMode, que indica si se va a utilizar el nombre del host para llegar al servicio cuando coincida en el URI. El valor predeterminado es StrongWildcard, que omite el nombre del host en la coincidencia.
maxBufferPoolSize El tamaño máximo del grupo de búferes para este enlace. El valor predeterminado es 524.288 bytes (512 × 1.024). En muchas partes de Windows Communication Foundation (WCF) se utilizan búferes. Crear y destruir búferes cada vez que se usan es caro, como lo es la recolección de elementos no utilizados para los búferes. Con los grupos de búferes, puede tomar un búfer del grupo, usarlo y devolverlo al grupo una vez haya terminado. Esto evita la sobrecarga al crear y destruir búferes.
maxReceivedMessageSize El tamaño máximo del mensaje, en bytes, incluidos los encabezados, que puede recibir un canal configurado con este enlace. El remitente de un mensaje que supere este límite recibe un error SOAP. El destinatario quita el mensaje y crea una entrada del evento en el registro de seguimiento. El valor predeterminado es 65536.
messageEncoding Define el codificador utilizado para codificar el mensaje. Los valores válidos incluyen los siguientes:

- Text: Usar un codificador de mensaje de texto.
- Mtom: Usar un codificador del Mecanismo de optimización de transmisión de mensajes 1.0 (MTOM).

El valor predeterminado es Text.

Este atributo es del tipo WSMessageEncoding.
name Nombre de configuración del enlace. Este valor debe ser único porque se usa como identificación del enlace. A partir de .NET Framework 4, no es necesario que los enlaces y los comportamientos tengan nombre. Para más información sobre la configuración, enlaces sin nombre y comportamientos predeterminados, consulte Configuración simplificada y Configuración simplificada de los servicios WCF.
openTimeout Valor de la estructura TimeSpan que especifica el intervalo de tiempo del que dispone una operación de apertura para completarse. Este valor debe ser mayor o igual que Zero. El valor predeterminado es 00:01:00.
proxyAddress Un URI que especifica la dirección del proxy HTTP. Si useSystemWebProxy es true, este valor debe ser null. El valor predeterminado es null.
receiveTimeout Un valor TimeSpan que especifica el intervalo de tiempo del que dispone una operación de recepción para completarse. Este valor debe ser mayor o igual que Zero. El valor predeterminado es 00:01:00.
sendTimeout Un valor TimeSpan que especifica el intervalo de tiempo del que dispone una operación de envío para completarse. Este valor debe ser mayor o igual que Zero. El valor predeterminado es 00:01:00.
textEncoding Especifica el codificador del juego de caracteres que se va a usar para emitir los mensajes en el enlace. Los valores válidos incluyen los siguientes:

- UnicodeFffeTextEncoding: Codificación Unicode Big Endian.
- Utf16TextEncoding: Codificación de 16 bits.
- Utf8TextEncoding: Codificación de 8 bits.

El valor predeterminado es Utf8TextEncoding.

Este atributo es del tipo Encoding.
transactionFlow Valor que especifica si el enlace admite el flujo de transacciones de WS. El valor predeterminado es false.
useDefaultWebProxy Un valor que especifica si se utiliza el proxy HTTP del sistema configurado automáticamente. El valor predeterminado es true.

Elementos secundarios

Elemento Descripción
<security> Define la configuración de seguridad del enlace. Este elemento es del tipo WSHttpSecurityElement.
<readerQuotas> Obtiene las restricciones de la complejidad de los mensajes SOAP que pueden procesar los extremos configurados con este enlace. Este elemento es del tipo XmlDictionaryReaderQuotasElement.
<reliableSession> Especifica si se establecen sesiones confiables entre los puntos de conexión del canal.

Elementos primarios

Elemento Descripción
<bindings> Este elemento contiene una colección de enlaces estándar y personalizados.

Comentarios

WS2007HttpBinding agrega el enlace proporcionado por un sistema similar a WSHttpBinding pero usa las versiones estándar de la Organización para el avance de estándares de información estructurada (OASIS, Organization for the Advancement of Structured Information Standards) de los protocolos ReliableSession, Security y TransactionFlow. Se requiere ningún cambio en el modelo de objetos o la configuración predeterminada cuando se utilice este enlace.

Ejemplo

<configuration>
  <system.ServiceModel>
    <bindings>
      <ws2007HttpBinding>
        <binding closeTimeout="00:00:10"
                 openTimeout="00:00:20"
                 receiveTimeout="00:00:30"
                 sendTimeout="00:00:40"
                 bypassProxyOnLocal="false"
                 transactionFlow="false"
                 hostNameComparisonMode="WeakWildcard"
                 maxReceivedMessageSize="1000"
                 messageEncoding="Mtom"
                 proxyAddress="http://www.contoso.com"
                 textEncoding="utf-16"
                 useDefaultWebProxy="false">
          <reliableSession ordered="false"
                           inactivityTimeout="00:02:00"
                           enabled="true" />
          <security mode="Transport">
            <transport clientCredentialType="Digest"
                       proxyCredentialType="None"
                       realm="someRealm" />
            <message clientCredentialType="Windows"
                     negotiateServiceCredential="false"
                     algorithmSuite="Aes128"
                     defaultProtectionLevel="None" />
          </security>
        </binding>
      </ws2007HttpBinding>
    </bindings>
  </system.ServiceModel>
</configuration>

Consulte también