Tutorial: Einen Windows Communication Foundation-Client verwenden

Dieses Tutorial erläutert die letzte von fünf Aufgaben, die zur Erstellung einer grundlegenden Windows Communication Foundation (WCF)-Anwendung erforderlich sind. Eine Übersicht über die Tutorials finden Sie unter Tutorial: Erste Schritte mit Windows Communication Foundation-Anwendungen.

Nachdem Sie einen Wcf-Proxy (Windows Communication Foundation) erstellt und konfiguriert haben, erstellen Sie einen Client instance und kompilieren die Clientanwendung. Anschließend verwenden Sie sie für die Kommunikation mit dem WCF-Dienst.

In diesem Tutorial lernen Sie Folgendes:

  • Fügen Sie Code zur Verwendung des WCF-Clients hinzu.
  • Testen des WCF-Clients.

Fügen Sie Code zur Verwendung des WCF-Clients hinzu

Der Clientcode führt die folgenden Schritte aus:

  • Instanziiert den WCF-Client.
  • Die Dienstoperationen werden vom erstellten Proxy aufgerufen.
  • Schließt den Client, nachdem der Aufruf des Vorgangs abgeschlossen ist.

Öffnen Sie die Datei Program.cs oder Module1.vb aus dem Projekt GettingStartedClient und ersetzen Sie ihren Code durch den folgenden Code:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using GettingStartedClient.ServiceReference1;

namespace GettingStartedClient
{
    class Program
    {
        static void Main(string[] args)
        {
            //Step 1: Create an instance of the WCF proxy.
            CalculatorClient client = new CalculatorClient();

            // Step 2: Call the service operations.
            // Call the Add service operation.
            double value1 = 100.00D;
            double value2 = 15.99D;
            double result = client.Add(value1, value2);
            Console.WriteLine("Add({0},{1}) = {2}", value1, value2, result);

            // Call the Subtract service operation.
            value1 = 145.00D;
            value2 = 76.54D;
            result = client.Subtract(value1, value2);
            Console.WriteLine("Subtract({0},{1}) = {2}", value1, value2, result);

            // Call the Multiply service operation.
            value1 = 9.00D;
            value2 = 81.25D;
            result = client.Multiply(value1, value2);
            Console.WriteLine("Multiply({0},{1}) = {2}", value1, value2, result);

            // Call the Divide service operation.
            value1 = 22.00D;
            value2 = 7.00D;
            result = client.Divide(value1, value2);
            Console.WriteLine("Divide({0},{1}) = {2}", value1, value2, result);

            // Step 3: Close the client to gracefully close the connection and clean up resources.
            Console.WriteLine("\nPress <Enter> to terminate the client.");
            Console.ReadLine();
            client.Close();
        }
    }
}
Imports System.Collections.Generic
Imports System.Text
Imports System.ServiceModel
Imports GettingStartedClient.ServiceReference1

Module Module1

    Sub Main()
        ' Step 1: Create an instance of the WCF proxy.
        Dim Client As New CalculatorClient()

        ' Step 2: Call the service operations.
        ' Call the Add service operation.
        Dim value1 As Double = 100D
        Dim value2 As Double = 15.99D
        Dim result As Double = Client.Add(value1, value2)
        Console.WriteLine("Add({0},{1}) = {2}", value1, value2, result)

        ' Call the Subtract service operation.
        value1 = 145D
        value2 = 76.54D
        result = Client.Subtract(value1, value2)
        Console.WriteLine("Subtract({0},{1}) = {2}", value1, value2, result)

        ' Call the Multiply service operation.
        value1 = 9D
        value2 = 81.25D
        result = Client.Multiply(value1, value2)
        Console.WriteLine("Multiply({0},{1}) = {2}", value1, value2, result)

        ' Call the Divide service operation.
        value1 = 22D
        value2 = 7D
        result = Client.Divide(value1, value2)
        Console.WriteLine("Divide({0},{1}) = {2}", value1, value2, result)

        ' Step 3: Close the client to gracefully close the connection and clean up resources.
        Console.WriteLine()
        Console.WriteLine("Press <Enter> to terminate the client.")
        Console.ReadLine()
        Client.Close()

    End Sub

End Module

Beachten Sie die using-Anweisung (für Visual C#) oder Imports (für Visual Basic), die importiert GettingStartedClient.ServiceReference1. Diese Anweisung importiert den Code, den Visual Studio mit der Funktion Dienstverweis hinzufügen generiert hat. Der Code instanziiert den WCF-Proxy und ruft jede der Dienstvorgänge auf, die der Rechnerdienst bereitstellt. Anschließend wird der Proxy geschlossen und das Programm beendet.

Testen des WCF-Clients.

Testen der Anwendung von Visual Studio aus

  1. Speichern und erstellen Sie die Projektmappe.

  2. Wählen Sie den Ordner GettingStartedClient und dann im Kontextmenü als Startprojekt festlegen aus.

  3. Wählen Sie unter Startprojekte die Option GettingStartedClient in der Dropdownliste aus, und wählen Sie dann Ausführen aus, oder drücken Sie F5.

Testen der Anwendung über eine Eingabeaufforderung

  1. Öffnen Sie eine Eingabeaufforderung als Administrator, und navigieren Sie dann zu Ihrem Visual Studio-Projektmappenverzeichnis.

  2. So starten Sie den Dienst: Geben Sie GettingStartedHost\bin\Debug\GettingStartedHost.exeein.

  3. So starten Sie den Client: Öffnen Sie eine andere Eingabeaufforderung, navigieren Sie zu Ihrem Visual Studio-Projektmappenverzeichnis, und geben Sie dannGettingStartedClient\bin\Debug\GettingStartedClient.exeein.

    GettingStartedHost.exe erzeugt die folgende Ausgabe:

    The service is ready.
    Press <Enter> to terminate the service.
    
    Received Add(100,15.99)
    Return: 115.99
    Received Subtract(145,76.54)
    Return: 68.46
    Received Multiply(9,81.25)
    Return: 731.25
    Received Divide(22,7)
    Return: 3.14285714285714
    

    GettingStartedClient.exe erzeugt die folgende Ausgabe:

    Add(100,15.99) = 115.99
    Subtract(145,76.54) = 68.46
    Multiply(9,81.25) = 731.25
    Divide(22,7) = 3.14285714285714
    
    Press <Enter> to terminate the client.
    

Nächste Schritte

Sie haben nun alle Aufgaben im WCF-Tutorial "Erste Schritte" abgeschlossen. In diesem Tutorial haben Sie Folgendes gelernt:

In diesem Tutorial lernen Sie Folgendes:

  • Fügen Sie Code zur Verwendung des WCF-Clients hinzu.
  • Testen des WCF-Clients.

Wenn in einem der Schritte Probleme oder Fehler auftreten, führen Sie die Schritte im Artikel zur Problembehandlung aus, um sie zu beheben.