Compartir vía


Tutorial: Creación de un servicio WCF sencillo en Windows Forms de .NET Framework

En este tutorial se muestra cómo se crea un sencillo servicio de Windows Communication Foundation (WCF) sencillo. A continuación, se probará y se accederá a él desde una aplicación de Windows Forms para .NET Framework.

Nota

Es posible que el equipo muestre nombres o ubicaciones diferentes para algunos de los elementos de la interfaz de usuario de Visual Studio en este artículo. Puede que esté usando una edición diferente de Visual Studio u otra configuración del entorno. Para obtener más información, vea Personalizar el IDE.

Prerrequisitos

Las herramientas de WCF no se instalan con la carga de trabajo de .NET. Use el Instalador de Visual Studio para modificar la instalación. En el instalador, seleccione Windows Communication Foundation en Componentes individuales. Vea Modificación de Visual Studio.

Creación de un servicio

  1. Abra Visual Studio.

  2. En la ventana de inicio, elija Crear un proyecto nuevo.

  3. Escriba biblioteca de servicios wcf en el cuadro de búsqueda de la página Crear un proyecto. Seleccione la plantilla de C# o Visual Basic para la biblioteca de servicios WCF y haga clic en Siguiente.

    Creación de un proyecto de biblioteca de servicios WCF en Visual Studio

    Sugerencia

    Si no ve ninguna plantilla, es posible que tenga que instalar el componente Windows Communication Foundation de Visual Studio. Seleccione Instalar más herramientas y características para abrir el Instalador de Visual Studio. Seleccione la pestaña Componentes individuales, desplácese hacia abajo hasta Actividades de desarrollo y seleccione Windows Communication Foundation. Haga clic en Modificar.

  4. En la página Configurar el nuevo proyecto, haga clic en Crear.

    Nota

    Se creará un servicio de trabajo que puede probar y acceder a él. Los dos pasos siguientes muestran cómo puede modificar el método predeterminado para utilizar un tipo de datos diferente. En una aplicación real, también agregaría sus propias funciones al servicio.

  5. En el Explorador de soluciones, haga doble clic en IService1.vb o IService1.cs.

    El archivo IService1

    Busque la línea siguiente:

    [OperationContract]
    string GetData(int value);
    

Cambie el tipo del parámetro value a "string" (cadena):

[OperationContract]
string GetData(string value);

En el código anterior, observe el atributo OperationContract. Este atributo es obligatorio para cualquier método expuesto por el servicio.

  1. En el Explorador de soluciones, haga doble clic en Service1.vb o Service1.cs.

    El archivo Service1

    Busque la línea siguiente:

    public string GetData(int value)
    {
        return string.Format("You entered: {0}", value);
    }
    

Cambie el tipo del parámetro value a "string" (cadena):

public string GetData(string value)
{
    return string.Format("You entered: {0}", value);
}

Probar el servicio

  1. Presione F5 para ejecutar el servicio. Aparece un formulario Cliente de prueba WCF y se carga el servicio.

  2. En el formulario Cliente de prueba WCF, haga doble clic en el método GetData() en IService1. Aparece la pestaña GetData.

    El método GetData()

  3. En el cuadro Solicitar, seleccione el campo Valor y escriba Hello.

    El campo Valor

  4. Haga clic en el botón Invocar. Si aparece un cuadro de diálogo de Advertencia de seguridad, haga clic en Aceptar. El resultado se muestra en el cuadro Respuesta.

    El resultado en el cuadro Respuesta

  5. En el menú Archivo, haga clic en Salir para cerrar el formulario de prueba.

Acceso al servicio

Referencia al servicio WCF

  1. En el menú Archivo, apunte a Agregar > Nuevo proyecto. Elija proyecto de Aplicación de Windows Forms (.NET Framework).

  2. Haga clic con el botón derecho en el proyecto y seleccione Agregar > referencia de servicio. Aparecerá el cuadro de diálogo Agregar referencia de servicio.

  3. En el cuadro de diálogo Agregar referencia de servicio, haga clic en Detectar.

    Captura de pantalla que muestra el cuadro de diálogo Agregar referencia de servicio.

    Aparece Service1 en el panel Servicios.

  4. Haga clic en Aceptar para agregar la referencia del servicio.

Compilar una aplicación cliente

  1. En el Explorador de soluciones, haga doble clic en Form1.vb o Form1.cs para abrir el Diseñador de Windows Forms, si no está ya abierto.

  2. Abra el Cuadro de herramientas haciendo clic en Ver>Cuadro de herramientas (o Ctrl+Alt+X en el teclado).

  3. Desde el Cuadro de herramientas, arrastre un control TextBox, un control Label y un control Button al formulario.

    Captura de pantalla que muestra cómo agregar controles al formulario.

  4. Haga doble clic en Button y agregue el código siguiente al controlador de eventos Click:

    private void button1_Click(System.Object sender, System.EventArgs e)
    {
        ServiceReference1.Service1Client client = new
            ServiceReference1.Service1Client();
        string returnString;
    
        returnString = client.GetData(textBox1.Text);
        label1.Text = returnString;
    }
    
  5. En Explorador de soluciones, haga clic con el botón derecho en el nodo del proyecto (por ejemplo, WindowsFormsApp1) y haga clic en Establecer como proyecto de inicio.

  6. Presione F5 para ejecutar el proyecto. Escriba algún texto y haga clic en el botón. La etiqueta mostrará "Escribió:" y verá el texto que escribió.

    Captura de pantalla que muestra el resultado de la ejecución del formulario.