Esercitazione: Usare un client Windows Communication Foundation
Questa esercitazione descrive le ultime cinque attività necessarie per creare un'applicazione Windows Communication Foundation (WCF) di base. Per una panoramica delle esercitazioni, vedere Esercitazione: Introduzione alle applicazioni Windows Communication Foundation.
Dopo aver creato e configurato un proxy di Windows Communication Foundation (WCF), si crea un'istanza client e si compila l'applicazione client. Viene quindi usato per comunicare con il servizio WCF.
In questa esercitazione apprenderai a:
- Aggiungere codice per usare il client WCF.
- Testare il client WCF.
Aggiungere codice per usare il client WCF
Il codice client esegue i passaggi seguenti:
- Crea un'istanza del client WCF.
- Chiamata delle operazioni del servizio dal proxy generato.
- Chiude il client al termine della chiamata all'operazione.
Aprire il file Program.cs o Module1.vb dal progetto GettingStartedClient e sostituirlo con il codice seguente:
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
Si noti l'istruzione using
(per Visual C#) o Imports
(per Visual Basic) che importa GettingStartedClient.ServiceReference1
. Questa istruzione importa il codice generato da Visual Studio con la funzione Aggiungi riferimento al servizio. Il codice crea un'istanza del proxy WCF e chiama ognuna delle operazioni del servizio esposte dal servizio calcolatrice. Chiude quindi il proxy e termina il programma.
Testare il client WCF
Testare l'applicazione da Visual Studio
Salvare e compilare la soluzione.
Selezionare la cartella GettingStartedClient e quindi selezionare Imposta come progetto di avvio dal menu di scelta rapida.
Da Progetti di avvio, selezionare GettingStartedClient dall'elenco a discesa, quindi selezionare Esegui o premere F5.
Testare l'applicazione da un prompt dei comandi
Aprire un prompt dei comandi come amministratore e quindi passare alla directory della soluzione di Visual Studio.
Per avviare il servizio: immettere GettingStartedHost\bin\Debug\GettingStartedHost.exe.
Per avviare il client: aprire un altro prompt dei comandi, passare alla directory della soluzione di Visual Studio e quindi immettere GettingStartedClient\bin\Debug\GettingStartedClient.exe.
GettingStartedHost.exe produce l'output seguente:
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 genera l'output seguente:
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.
Passaggi successivi
Tutte le attività dell'esercitazione introduttiva di WCF sono state completate. Questa esercitazione ha descritto come:
In questa esercitazione apprenderai a:
- Aggiungere codice per usare il client WCF.
- Testare il client WCF.
Se si verificano problemi o errori in uno dei passaggi, seguire la procedura descritta nell'articolo sulla risoluzione dei problemi per risolverli.