Gewusst wie: Verwenden eines Windows Communication Foundation-ClientsHow to: Use a Windows Communication Foundation Client

Dies ist die letzte von sechs Aufgaben, die zum Erstellen einer grundlegenden Windows Communication Foundation (WCF)-Anwendung erforderlich.This is the last of six tasks required to create a basic Windows Communication Foundation (WCF) application. Einen Überblick über alle sechs Aufgaben finden Sie unter der Lernprogramm für erste Schritte Thema.For an overview of all six of the tasks, see the Getting Started Tutorial topic.

Sobald ein Windows Communication Foundation (WCF)-Proxy erstellt und konfiguriert wurde, kann eine Clientinstanz erstellt werden, und die Clientanwendung kompiliert und zur Kommunikation mit den WCF-Dienst verwendet werden kann.Once a Windows Communication Foundation (WCF) proxy has been created and configured, a client instance can be created and the client application can be compiled and used to communicate with the WCF service. Dieses Thema beschreibt Verfahren zur Instanziierung und Verwendung eines WCF-Clients.This topic describes procedures for instantiating and using a WCF client. Von dieser Prozedur werden drei Aktionen ausgeführt:This procedure does three things:

  1. Instanziiert einen WCF-Client.Instantiates a WCF client.

  2. Die Dienstoperationen werden vom erstellten Proxy aufgerufen.Calls the service operations from the generated proxy.

  3. Nach Abschluss des Operationsaufrufs wird der Client beendet.Closes the client once the operation call is completed.

So verwenden Sie einen Windows Communication Foundation-ClientTo use a Windows Communication Foundation client

  1. Öffnen Sie im GettingStartedClient-Projekt die Datei "Program.cs" oder "Program.vb", und ersetzen Sie den vorhandenen Code durch den folgenden Code:Open the Program.cs or Program.vb file from the GettingStartedClient project and replace the existing code with the following 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: Closing the client gracefully closes the connection and cleans up resources.  
                client.Close();  
            }  
        }  
    }  
    
    Imports System  
    Imports System.Collections.Generic  
    Imports System.Text  
    Imports System.ServiceModel  
    Imports GettingStartedClientVB2.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: Closing the client gracefully closes the connection and cleans up resources.  
            Client.Close()  
    
            Console.WriteLine()  
            Console.WriteLine("Press <ENTER> to terminate client.")  
            Console.ReadLine()  
    
        End Sub  
    
    End Module  
    

    Beachten Sie die Using- oder Imports-Anweisung, mit der "GettingStartedClient.ServiceReference1" importiert wird.Notice the using or imports statement that imports the GettingStartedClient.ServiceReference1. Dies importiert den Code, der durch "Dienstverweis hinzufügen" in Visual Studio generiert wird.This imports the code generated by Add Service Reference in Visual Studio. Der Code instanziiert den WCF-Proxy und ruft dann die einzelnen Dienstvorgänge auf, die vom Rechnerdienst verfügbar gemacht werden, schließt den Proxy und beendet den Vorgang.The code instantiates the WCF proxy and then calls each of the service operations exposed by the calculator service, closes the proxy and terminates.

Sie haben nun das Lernprogramm abgeschlossen.You have now completed the tutorial. Sie haben einen Dienstvertrag definiert, den Dienstvertrag implementiert, einen WCF-Proxy generiert, eine WCF-Clientanwendung konfiguriert und den Proxy zum Aufrufen von Dienstvorgängen verwendet.You defined a service contract, implemented the service contract, generated a WCF proxy, configured a WCF client application, and then used the proxy to call service operations. Um die Anwendung zu testen, führen Sie zuerst "GettingStartedHost" aus, um den Dienst zu starten, und dann "GettingStartedClient".To test out the application first run GettingStartedHost to start the service and then run GettingStartedClient. Die Ausgabe von "GettingStartedHost" sollte wie folgt aussehen:The output from GettingStartedHost should look like this:

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

Die Ausgabe von "GettingStartedClient" sollte wie folgt aussehen:The output from GettingStartedClient should look like this:

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

Siehe auchSee Also

Erstellen von ClientsBuilding Clients
Vorgehensweise: Erstellen eines ClientsHow to: Create a Client
Tutorial mit ersten SchrittenGetting Started Tutorial
Einfache WCF-ProgrammierungBasic WCF Programming
Vorgehensweise: Erstellen eines DuplexvertragsHow to: Create a Duplex Contract
Vorgehensweise: Zugreifen auf Dienste mit einem DuplexvertragHow to: Access Services with a Duplex Contract
Erste SchritteGetting Started
Selbst gehostete DiensteSelf-Host