Windows Communication Foundation<br />
CONTENIDO<br />Conceptos Fundamentales<br />Preguntas<br />Información de Contacto<br />
CONCEPTOS FUNDAMENTALES<br />Endpoint<br />Binding<br />Contract<br />Hosting<br />Mensajes<br />Intercambio de Metadatos ...
ENDPOINT<br /><ul><li>Es un portal para la comunicación con todo el mundo
Es un recurso en la red, al cual pueden ser enviados los mensajes
Consiste en 3 componentes:</li></ul>Address (Dirección)<br />Binding (Canal)<br />Contract (Contrato)<br />Servicio<br />C...
ENDPOINT<br /><ul><li>El ABC de un Endpointse define por:</li></ul>Address <br />Dirección de la Red<br />Binding<br />Pro...
BINDING<br /><ul><li>Define el canal y los parámetros  usado para comunicarse con un endpoint
Consta de un conjunto de componentes llamados elementos de enlace que se "apilan" uno sobre el otro para crear la infraest...
Tiene  como características:</li></ul>Encoding<br />Selección de transporte<br />Seguridad<br />Mensajería confiable<br />...
BINDING<br /><ul><li>Configuración</li></ul>Administrativa (Archivo de configuración)<br />
BINDING<br />Modelo de Programación<br />
CONTRACT<br /><ul><li>Define las capacidades ofrecidas por el endpoint, es decir, define las operaciones que un endpoint e...
Los tipos de contratos son:</li></ul>Contrato de Servicios<br />Une varias operaciones relacionadas en una unidad funciona...
CONTRACT<br />Contrato de Mensaje<br />Describe el formato de un mensaje<br />Contrato de Error<br />Puede estar asociado ...
HOSTING<br /><ul><li>Un servicio se debe alojar en algún proceso
Un host es una aplicación que controla la duración del servicio
Los servicios pueden auto alojarseo un proceso de alojamiento existente puede administrarlos</li></li></ul><li>DEMOS<br />...
Reforzar los conocimientos: Endpoint, Binding y Contract
Upcoming SlideShare
Loading in …5
×

WCF for Dummies (Parte II)

12,467 views

Published on

Published in: Technology, Business
  • Be the first to comment

WCF for Dummies (Parte II)

  1. 1. Windows Communication Foundation<br />
  2. 2. CONTENIDO<br />Conceptos Fundamentales<br />Preguntas<br />Información de Contacto<br />
  3. 3. CONCEPTOS FUNDAMENTALES<br />Endpoint<br />Binding<br />Contract<br />Hosting<br />Mensajes<br />Intercambio de Metadatos (Metadata Exchange)<br />
  4. 4. ENDPOINT<br /><ul><li>Es un portal para la comunicación con todo el mundo
  5. 5. Es un recurso en la red, al cual pueden ser enviados los mensajes
  6. 6. Consiste en 3 componentes:</li></ul>Address (Dirección)<br />Binding (Canal)<br />Contract (Contrato)<br />Servicio<br />Cliente<br />Endpoint<br />Endpoint<br />Endpoint<br />Mensaje<br />Endpoint<br />
  7. 7. ENDPOINT<br /><ul><li>El ABC de un Endpointse define por:</li></ul>Address <br />Dirección de la Red<br />Binding<br />Protocolos: TCP, HTTP, MSMQ, …<br />Codificación: Texto o Binario<br />Seguridad: SSL, Seguridad SOAP<br />Referencia al servicio a exponer<br />Contract<br />Interfaz (Contrato del Servicio)<br />Endpoint<br />Contract<br />Address<br />Binding<br />¿Dónde?<br />¿Cómo?<br />¿ Qué?<br />Servicio<br />Cliente<br />Endpoint<br />Endpoint<br />Mensaje<br />C<br />A<br />B<br />A<br />C<br />B<br />
  8. 8. BINDING<br /><ul><li>Define el canal y los parámetros usado para comunicarse con un endpoint
  9. 9. Consta de un conjunto de componentes llamados elementos de enlace que se "apilan" uno sobre el otro para crear la infraestructura de comunicaciones
  10. 10. Tiene como características:</li></ul>Encoding<br />Selección de transporte<br />Seguridad<br />Mensajería confiable<br /><ul><li>Presenta los siguientes tipos:</li></ul>BasicHttpBinding<br />WSHttpBinding<br />WSDualHttpBinding<br />WSFederationHttpBinding<br />NetTcpBinding<br />NetNamedPipeBinding<br />NetMsmqBinding<br />NetPeerTcpBinding<br />
  11. 11. BINDING<br /><ul><li>Configuración</li></ul>Administrativa (Archivo de configuración)<br />
  12. 12. BINDING<br />Modelo de Programación<br />
  13. 13. CONTRACT<br /><ul><li>Define las capacidades ofrecidas por el endpoint, es decir, define las operaciones que un endpoint expone y los formatos de los mensajes que las operaciones requieren
  14. 14. Los tipos de contratos son:</li></ul>Contrato de Servicios<br />Une varias operaciones relacionadas en una unidad funcional única<br />Define ajustes de servicio<br />Contrato de Operación<br />Define los parámetros y el tipo de valor devuelto de una operación<br />Al crear una interfaz que define el contrato de servicio, significa un contrato de operación<br />
  15. 15. CONTRACT<br />Contrato de Mensaje<br />Describe el formato de un mensaje<br />Contrato de Error<br />Puede estar asociado a una operación de servicio para denotar errores que se pueden devolver<br />
  16. 16. HOSTING<br /><ul><li>Un servicio se debe alojar en algún proceso
  17. 17. Un host es una aplicación que controla la duración del servicio
  18. 18. Los servicios pueden auto alojarseo un proceso de alojamiento existente puede administrarlos</li></li></ul><li>DEMOS<br />Creación de un servicio WCF en Visual Studio 2008<br /><ul><li>Creación de un servicio simple en WCF
  19. 19. Reforzar los conocimientos: Endpoint, Binding y Contract
  20. 20. Creación de un  Endpoint, Binding y Contract
  21. 21. Configurar/Personalizar el servicio WCF</li></ul>Alojamiento (Hosting) y WCF<br /><ul><li>Creación de un servicio en distintos ambientes (IIS, WS, App)</li></li></ul><li>DEMO: CREACION DE UN SERVICIO WCF SIMPLE<br /><ul><li>El cliente ha solicitado que construyamos un servicio básico para manejar simples actividades bancarias (débitos y créditos)
  22. 22. El banco tiene una conexión VPN privadas entre los clientes de cajeros automáticos y el centro de datos corporativo, y por razones de interoperabilidad (digamos que las máquinas cliente ATM son de varios proveedores, algunos con Microsoft y otros que utilizan no son de Microsoft) les gustaría que la red de cajeros automáticos se comuniqie con el servicio mediante HTTP
  23. 23. En el mundo real podemos tomar otras decisiones, como el uso de TCP o en la dirección https mínimo (SSL) para la seguridad adicional</li></ul>ServiceAccount Bank<br />Conexión VPN (Protocolo HTTP)<br />Servidor de Aplicación<br />Usuarios ATM<br />
  24. 24. MENSAJES<br />La estructura de un mensaje es sencilla.<br />Está compuesto por un sobre que contiene dos partes principales: encabezado y cuerpo<br />El cuerpo es el que contiene la carga fundamental del mensaje<br />El encabezado posee información que es de utilidad para las aplicaciones que realizan el intercambio. <br />Un mensaje puede contener más de un encabezado, pero sólo puede contener un cuerpo<br />
  25. 25. MENSAJES<br />Data Contractvs. MessageContract<br />Data Contract (Contrato de Datos)<br />Es un acuerdo formal entre un servicio y un cliente que abstractamente describe los datos que se van a intercambiar<br />Define las estructuras de datos personalizadas del servicio<br />Define con precisión, para cada parámetro o tipo de valor devuelto, qué datos se serializan (se convierten en XML) para su intercambio.<br />Puede representar la modelización de los datos en una comunicación<br />MessageContract (Contrato de mensajes)<br />Describe la estructura del mensaje<br />Define el contenido de la cabecera y el cuerpo del mensaje SOAP<br />Interoperabilidad con otras plataformas<br />Convierte la clase en un mensaje SOAP<br />
  26. 26. MENSAJES<br />
  27. 27. METADATA EXCHANGE<br /><ul><li>Los metadatos de un servicio describen las características del servicio que una entidad externo necesita entender para comunicarse con el servicio
  28. 28. WCF proporciona una infraestructura para exportar, publicar, recuperar e importar metadatos
  29. 29. Utiliza los metadatos para describir la forma de interactuar con el extremo de servicio
  30. 30. Consiste en:</li></ul>Servicio de Exportación de Metadatos<br />Es el proceso que describe el extremo del servicio de forma que el cliente pueda comprender cómo utilizar el servicio.<br />Servicio de Publicación de Metadatos<br />Es el proceso de publicación de metadatos<br />Servicio de Recuperación de Metadatos<br />Es el proceso de recuperación de los metadatos<br />Servicio de importación de Metadatos<br />Es el proceso de generación de la representación abstracta de los servicios de la utilización de metadatos.<br />
  31. 31. DEMO<br />Metadata Exchange<br /><ul><li>Habilitar el intercambio de datos : HTTP_GET
  32. 32. Crear un Metadata Exchange Endpoint</li></li></ul><li>http://yolopuedohacer.blogspot.com/<br />

×