2017-01-17 1 views
0

Actuellement, j'étudie WCF avec C# et suis actuellement sur part 6 (comment utiliser un client wcf) du tutoriel/soluce. Je comprends jusqu'à présent que pour utiliser le service, je dois ajouter une référence de service à la solution et je suis libre d'utiliser les méthodes que j'ai faites dans le service (en particulier, dans l'interface de service). Pendant que j'étudie, je me fais un devoir de retracer où j'ai déclaré des objets (classes et méthodes), donc je comprends comment cela fonctionne.Exemple de WCF C# dans MSDN: où a été déclaré CalculatorClient?

Je suis confus cependant, dans la partie 6 où était CalculatorClient déclaré?

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(); 
      //(what? i don't recall naming anything 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); 

J'ai essayé de regarder en arrière à part 1, part 2, part 3, part 4 et part 5 mais je ne trouve la partie où nous avons déclaré cet objet. Ce que j'ai fait pour vérifier est de ctrl + f dans toutes les pages et chercher des traces sur le mot (CalculatorClient) mais il n'y en a pas. Même sur la partie 6, il n'y a que 3 traces du mot, sans jamais expliquer d'où ça vient! Dans Visual Studio, IntelliSense indique que le client Calculator appartient à (my solution).ServiceReference1. Mais encore une fois, je ne me souviens pas de nommer quoi que ce soit.

Cela me dérange depuis si je vais créer mon propre wcf alors? quel sera le nom du mandataire client alors?

Répondre

1

Votre lien vers Part 4 montre l'une des façons de générer un proxy client à l'aide de l'utilitaire svcutil.exe. CalculatorClient dans ce cas. Un autre moyen automatisé serait d'utiliser Visual Studio "Add Service Reference ..." commande. Les deux moyens vont générer une classe client dans un fichier nommé d'après lui. La façon IDE va ​​le mettre en projet. Lorsque vous utilisez svcUtil.exe, vous devez ajouter le fichier généré à votre projet.

+0

Ainsi, CalculatorClient était-il un nom par défaut donné par svcutil? En passant, il n'y a aucune mention du terme CalculatorClient. J'ai essayé de refaire la partie 4. Où le client Calculator a-t-il été déclaré? –

+0

Tous les noms proviennent du fichier wsdl avec la définition du service. Ce fichier est généralement généré par WCF pour vous en fonction de votre service. Le tutoriel décrit la création et l'hébergement de services. Basé sur ce que je vois dans la partie 2 le service s'appelait CalculatorService ainsi le nom par défaut pour le client serait CalculatorServiceClient. Peut-être qu'ils l'ont juste raccourci dans le tutoriel. Désolé, je ne l'ai pas suivi dans les détails. –

+0

c'est la chose, je ne me souviens jamais de taper un mot nommé "Calculatrice" seulement. Je me souviens d'un "CalculatorService". Alors d'où vient exactement "CalculatorClient"? Cela me dérange depuis que si je vais créer mon propre wcf alors? quel sera le nom du mandataire client alors? –