Creación de un cliente de Windows Communication Foundation
Ésta es la cuarta de las seis tareas que son necesarias para crear un servicio de Windows Communication Foundation (WCF) básico y un cliente que puede llamar al servicio. Para obtener información general de las seis tareas, consulte el tema Tutorial de introducción.
En este tema se describe cómo se pueden recuperar metadatos desde un servicio WCF y usarlos para crear un proxy WCF que pueda obtener acceso al servicio. Esta tarea se completa con ayuda de la ServiceModel Metadata Utility Tool (Svcutil.exe) que WCF proporciona. Esta herramienta obtiene los metadatos del servicio y genera un archivo de código fuente administrado para un proxy en el lenguaje elegido. Además de crear el proxy de cliente, la herramienta también crea el archivo de configuración para el cliente que permite que la aplicación cliente se conecte al servicio en uno de sus extremos.
La aplicación de cliente usa el proxy generado para crear un objeto de cliente de WCF. Este procedimiento se describe en Cómo usar un cliente de Windows Communication Foundation.
El código del cliente generado por esta tarea se proporciona en el ejemplo que sigue el procedimiento.
Creación de un cliente de Windows Communication Foundation
Siga estos pasos para crear en la solución actual un nuevo proyecto para el cliente en :
- En el Explorador de soluciones (en la esquina superior derecha) de la misma solución que contiene el servicio, haga clic con el botón secundario en la solución actual (no el proyecto) y seleccione Agregar y, a continuación, Nuevo proyecto.
- En el cuadro de diálogo Agregar nuevo proyecto, seleccione Visual Basic o **Visual C#**y elija la plantilla Aplicación de consola y denomínela Cliente. Utilice la ubicación predeterminada.
- Haga clic en Aceptar.
Agregue una referencia a System.ServiceModel.dll para el proyecto:
- Haga clic con el botón secundario en la carpeta Referencias del proyecto Cliente en el Explorador de soluciones y seleccione Agregar referencia.
- Seleccione la ficha Reciente, elija System.ServiceModel.dll en el cuadro de lista y haga clic en Aceptar. Dado que ya agregó una referencia a este ensamblado en el primer paso de este tutorial, ahora aparece en la ficha Reciente. Si no lo ve en la ficha Reciente, seleccione la ficha Examinar, navegue hasta C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation y seleccione el ensamblado desde allí.
Nota
Al utilizar un compilador de línea de comandos (como, por ejemplo, Csc.exe o Vbc.exe), también debe proporcionar la ruta de acceso a los ensamblados. De forma predeterminada, en un equipo que ejecuta, por ejemplo, Windows Vista, la ruta de acceso es Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation.
Agregue una instrucción using (Imports en Visual Basic) para el espacio de nombres System.ServiceModel en el archivo Program.cs o Program.vb generado.
Imports System.ServiceModel;
using System.ServiceModel;
Inicie el servicio creado en los pasos anteriores. Para obtener más información, consulte Procedimiento para hospedar y ejecutar un servicio básico de Windows Communication Foundation.
Ejecute la Service Model Metadata Utility Tool (SvcUtil.exe) con los modificadores adecuados para crear el código de cliente y un archivo de configuración realizando los siguientes pasos:
Inicie una sesión de consola SDK de Windows seleccionando CMD Shell bajo la entrada Microsoft Windows SDK en el menú Inicio.
Explore hasta el directorio donde desea colocar el código de cliente. Si creó el proyecto de cliente con la configuración predeterminada, el directorio es C:\Users\<nombre de usuario>\Documents\Visual Studio 2005\Projects\Service\Client.
Utilice la herramienta de línea de comandos Service Model Metadata Utility Tool (SvcUtil.exe) con los modificadores adecuados para crear el código de cliente. El siguiente ejemplo genera un archivo de código y un archivo de configuración para el servicio.
[Visual Basic]svcutil.exe /language:vb /out:generatedProxy.vb /config:app.config https://localhost:8000/ServiceModelSamples/service
[C#]
svcutil.exe /language:cs /out:generatedProxy.cs /config:app.config https://localhost:8000/ServiceModelSamples/service
De forma predeterminada, el código de proxy de cliente se genera en un archivo con nombre después del servicio (en este caso, por ejemplo, CalculatorService.cs o CalculatorService.vb) con una extensión adecuada al lenguaje de programación: .vb para Visual Basic o .cs para C#). El modificador /out cambia el nombre del archivo proxy de cliente a generatedProxy.cs. El modificador /config cambia el nombre predeterminado del archivo de configuración de cliente, output.config, por app.config. Observe que los dos archivos se generan en el directorio C:\Users\<nombre de usuario>\Documents\Visual Studio 2005\Projects\Service\Client.
Agregue el proxy generado al proyecto de cliente en Visual Studio, haga clic con el botón secundario en el proyecto de cliente en el Explorador de soluciones, y seleccione Agregar y Elemento existente. Seleccione el archivo generatedProxy.cs generado en el paso anterior.
Ejemplo
Este ejemplo muestra el código de cliente generado por la Service Model Metadata Utility Tool (Svcutil.exe).
Ahora ha creado un cliente Windows Communication Foundation (WCF). Continúe en el tema Configuración de un cliente básico de Windows Communication Foundation para configurar el cliente. Para obtener más información, consulte Solución de problemas con el tutorial de introducción.
Consulte también
Tareas
Cómo publicar metadatos para un servicio mediante un archivo de configuración
Cómo: Utilizar Svcutil.exe para descargar los documentos de metadatos
Otros recursos
Service Model Metadata Utility Tool (Svcutil.exe)
Getting Started Sample
Self-Host