Compartir a través de


Desarrollo de aplicaciones SAP mediante el modelo de servicio WCF

En el nivel más bajo, Windows Communication Foundation (WCF) presenta un modelo de programación en el que los clientes invocan operaciones en un servicio intercambiando mensajes SOAP a través de un canal establecido entre los puntos de conexión de cliente y servicio. Este modelo, conocido como modelo de canal WCF, expone tipos de datos y métodos que permiten operar directamente en la arquitectura del canal WCF. El modelo de canal WCF proporciona control directo sobre el contenido de los mensajes SOAP que crea y sobre la forma en que la aplicación y el adaptador de SAP los consumen; sin embargo, crear mensajes SOAP bien formados para enviar a través de un canal y validar los mensajes de respuesta devueltos puede ser una tarea detallada y exacta.

Por este motivo, WCF proporciona otro modelo de programación denominado modelo de servicio WCF. El modelo de servicio WCF implica el uso de clases de proxy para invocar operaciones en un servicio de destino o para recibir operaciones de un cliente.

  • La clase de proxy utilizada para invocar operaciones en un servicio de destino se denomina clase de cliente WCF. Esta clase modela las operaciones expuestas por un servicio como métodos de .NET con parámetros fuertemente tipados. Mediante el modelo de servicio WCF, puede invocar las operaciones expuestas por el adaptador de SAP como métodos de .NET en el cliente WCF. Para obtener más información sobre los clientes WCF, vea Información general del cliente WCF.

  • La clase de proxy utilizada para recibir una operación de un cliente se denomina clase de contrato de servicio WCF. Esta clase modela una operación expuesta por el código como un método de devolución de llamada con parámetros fuertemente tipados. Después, puede hospedar una instancia de esta clase en system.ServiceModel.ServiceHost para permitir que un cliente invoque la operación en el código. Mediante el uso del modelo de servicio WCF y una clase de contrato de servicio WCF destinada a la operación POLLINGSTMT, puede recibir los resultados de una consulta de sondeo del adaptador de SAP.

    Las herramientas se usan para generar una clase de cliente WCF o un contrato de servicio WCF y código auxiliar asociado a partir de los metadatos de servicio que expone el adaptador de SAP. Puede usar cualquiera de las siguientes herramientas:

  • Herramienta de utilidad de metadatos de ServiceModel (svcutil.exe), que se incluye con WCF

  • Complemento Add Adapter Service Reference de Visual Studio, que se incluye con el adaptador de SAP.

    El complemento Add Adapter Service Reference está integrado con la experiencia de diseño de Visual Studio y presenta una interfaz estándar de Microsoft Windows que proporciona eficaces funcionalidades de exploración y búsqueda en las operaciones expuestas por el adaptador. Para obtener más información sobre cómo generar un cliente WCF o una clase de contrato de servicio WCF, vea Generar un cliente WCF o un contrato de servicio WCF para artefactos de la solución DE SAP.

    Dado que presenta un modelo que es familiar para los programadores de .NET y que oculta las complejidades subyacentes del intercambio de mensajes SOAP a través de un canal, el modelo de servicio WCF suele ser la mejor opción para desarrollar soluciones de programación para el adaptador de SAP. Sin embargo, hay escenarios en los que el modelo de canal WCF podría ser una mejor opción; especialmente en escenarios en los que es importante el streaming. Esto se debe a que serializar y des serializar entre la representación XML de objetos en un mensaje SOAP y los tipos de .NET que se usan para representarlos en el modelo de servicio implica leer todo el mensaje en la memoria. Para obtener más información sobre el uso del modelo de canal WCF, consulte Desarrollo de aplicaciones SAP con el modelo de canal WCF.

    Los temas de esta sección contienen información, procedimientos y ejemplos que le ayudarán a crear y usar el modelo de servicio WCF para desarrollar aplicaciones mediante el adaptador de SAP.

En esta sección