Referencia de contrato de servicio de adaptadores de WCF

 

Los adaptadores de WCF usan contratos de mensajes sin tipo cuando se reciben mensajes. Mediante el contrato de mensajes sin tipo, los adaptadores de WCF pueden recibir cualquier tipo de mensajes WCF de los clientes. Puede especificar cómo crear mensajes de BizTalk a partir de mensajes WCF entrantes a través de las opciones de cuerpo del mensaje de BizTalk entrantes en la consola de administración de BizTalk. Los contratos de servicio de adaptadores de WCF en la siguiente tabla se usan como contratos de mensajes sin tipo de los adaptadores de recepción WCF.

Advertencia

Este tema sólo se proporciona con fines informativos. Esta información se puede utilizar para interpretar las instancias que los contadores de rendimiento de WCF crean para los adaptadores de WCF y los metadatos generados de forma automática para estos adaptadores. No se base en esta información cuando cree aplicaciones.

Interfaz Descripción
ITwoWayAsync (interfaz) Se usa para las ubicaciones de recepción de solicitud-respuesta de WCF. Los adaptadores de WCF procesan de forma asíncrona los mensajes entrantes a través de esta interfaz.
ITwoWayAsyncVoid (interfaz) Se utiliza para las ubicaciones de recepción unidireccionales de WCF que no admiten un protocolo de transacción, excluido el adaptador de WCF-NetMsmq. Los adaptadores de WCF procesan de forma asíncrona los mensajes entrantes a través de esta interfaz.
ITwoWayAsyncVoidTxn (interfaz) Se utiliza para las ubicaciones de recepción unidireccionales de WCF que admiten un protocolo de transacción, excluido el adaptador de WCF-NetMsmq. Los adaptadores de WCF procesan de forma asíncrona los mensajes entrantes a través de esta interfaz.
IOneWayAsync (interfaz) Se usa para las ubicaciones de recepción no transaccionales y unidireccionales WCF-NetMsmq. El adaptador de WCF procesa de forma asíncrona los mensajes entrantes a través de esta interfaz. Nota: Los mensajes entrantes a través de la interfaz IOneWayAsync se pueden perder porque la interfaz se usa para los canales de datagrama no transaccionales.
IOneWayAsyncTxn (interfaz) Se utilizada para las ubicaciones de recepción transaccionales y unidireccionales WCF-NetMsmq. El adaptador de WCF procesa de forma asíncrona los mensajes entrantes a través de esta interfaz.
BizTalkServiceInstance (clase) Implementa los contratos del servicio que los adaptadores de WCF usan para recibir mensajes entrantes. Los adaptadores de WCF crean un objeto de servicio ServiceHost y singleton independiente de esta clase para cada ubicación de recepción para controlar las solicitudes de cliente durante la vigencia de la instancia de host de BizTalk que ejecuta ubicaciones de recepción de WCF. El objeto de servicio usa varios subprocesos para procesar mensajes simultáneamente a menos que se usen las ubicaciones de recepción WCF-NetMsmq con la propiedad Procesamiento ordenado seleccionada.
  • Los adaptadores de WCF seleccionan uno de los contratos de Servicio WCF para recibir mensajes dependiendo de la pila de canal configurado en las ubicaciones de recepción WCF.

    Nota

    Para los adaptadores de WCF estándar, las propiedades de configuración de WCF de las ubicaciones de recepción configuran automáticamente la pila de canal.

    Para determinar qué contrato de servicio usar, los adaptadores wcF invocan el método Binding.CanBuildChannelListener con IReplyChannel, IReplySessionChannel e IDuplexSessionChannel en el enlace para las ubicaciones de recepción de WCF. Si alguna de las llamadas al método devuelve true, los contratos de servicio que comienzan por ITwoWayAsync se usan para garantizar la entrega al menos una vez. De lo contrario, los contratos de servicio que comienzan por IOneWayAsync se usan para recibir mensajes. A continuación, los adaptadores wcF eligen los contratos de servicio que terminan con Txn para los casos siguientes:

    • TransactionFlowBindingElement se agrega a la pila de canales, en la que está habilitado el flujo de transacción.

    • MsmqTransportBindingElement se agrega a la pila de canales, de la que la propiedad ExactlyOnce se establece en true.

    • Se agrega un elemento de enlace que implementa ITransactedBindingElement al enlace, del que la propiedad TransactedReceiveEnabled se establece en true.

  • Si se agrega OneWayBindingElement para una ubicación de recepción de solicitud-respuesta de WCF, los mensajes entrantes a través de las ubicaciones de recepción se pueden perder porque OneWayBindingElement genera una respuesta ficticía inmediatamente antes de enviar los mensajes a los adaptadores de WCF.

Consulte también

ClaseServiceHost Binding.CanBuildChannelListenerIReplyChannel InterfaceIReplySessionChannelInterface IDuplexSessionChannel InterfaceTransactionFlowBindingElement Class MsmqTransportBindingElementITransactedBindingElement Interface ITransactedBindingElement.TransactedReceiveEnabled (Clase OneWayBindingElement)