Zelfstudie: Een Windows Communication Foundation-client gebruiken
In deze zelfstudie wordt de laatste van de vijf taken beschreven die nodig zijn om een eenvoudige WCF-toepassing (Windows Communication Foundation) te maken. Zie Zelfstudie: Aan de slag met Windows Communication Foundation-toepassingen voor een overzicht van de zelfstudies.
Nadat u een WCF-proxy (Windows Communication Foundation) hebt gemaakt en geconfigureerd, maakt u een clientexemplaren en compileert u de clienttoepassing. Vervolgens gebruikt u deze om te communiceren met de WCF-service.
In deze zelfstudie leert u het volgende:
- Voeg code toe om de WCF-client te gebruiken.
- Test de WCF-client.
Code toevoegen om de WCF-client te gebruiken
De clientcode voert de volgende stappen uit:
- Hiermee wordt de WCF-client geïnstitueert.
- Roept de servicebewerkingen aan op basis van de gegenereerde proxy.
- Hiermee sluit u de client nadat de bewerkingsaanroep is voltooid.
Open het bestand Program.cs of Module1.vb uit het Project GettingStartedClient en vervang de bijbehorende code door de volgende 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
Let op de using
instructie (voor Visual C#) of Imports
(voor Visual Basic) die wordt geïmporteerd GettingStartedClient.ServiceReference1
. Met deze instructie importeert u de code die Visual Studio heeft gegenereerd met de functie Servicereferentie toevoegen. De code instantieert de WCF-proxy en roept alle servicebewerkingen aan die door de rekenmachineservice worden weergegeven. Vervolgens wordt de proxy gesloten en wordt het programma beëindigd.
De WCF-client testen
De toepassing testen vanuit Visual Studio
Sla de oplossing op en bouw deze.
Selecteer de map GettingStartedClient en selecteer Vervolgens Instellen als Opstartproject in het snelmenu.
Vanuit Opstartprojecten selecteert u GettingStartedClient in de vervolgkeuzelijst en selecteert u Vervolgens Uitvoeren of drukt u op F5.
De toepassing testen vanaf een opdrachtprompt
Open een opdrachtprompt als beheerder en navigeer vervolgens naar de map van uw Visual Studio-oplossing.
Voer GettingStartedHost\bin\Debug\GettingStartedHost.exe in om de service te starten.
Als u de client wilt starten: open een andere opdrachtprompt, navigeert u naar de map van uw Visual Studio-oplossing en voert u Vervolgens GettingStartedClient\bin\Debug\GettingStartedClient.exe in.
GettingStartedHost.exe produceert de volgende uitvoer:
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 produceert de volgende uitvoer:
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.
Volgende stappen
U hebt nu alle taken in de zelfstudie aan de slag met WCF voltooid. In deze zelfstudie heeft u het volgende geleerd:
In deze zelfstudie leert u het volgende:
- Voeg code toe om de WCF-client te gebruiken.
- Test de WCF-client.
Als u problemen of fouten in een van de stappen hebt, volgt u de stappen in het artikel voor probleemoplossing om deze op te lossen.