Comment : spécifier une liaison de client dans la configuration
Dans cet exemple, une application console cliente est créée pour utiliser un service de calculatrice, et la liaison pour ce client est spécifiée de façon déclarative dans la configuration. Le client accède à CalculatorService, lequel implémente l'interface ICalculator. Le service et le client utilisent la classe BasicHttpBinding.
La procédure présentée suppose que le service de calculatrice est en cours d'exécution. Pour plus d'informations sur la procédure utilisée pour construire le service, consultez Comment : spécifier une liaison de service dans la configuration. Elle utilise également l'outil ServiceModel Metadata Utility Tool (Svcutil.exe) fourni par Windows Communication Foundation (WCF) pour générer automatiquement les composants du client. L'outil génère le code client et la configuration permettant d'accéder au service.
La construction du client s'effectue en deux parties. L'outil Svcutil.exe génère la calculatrice ClientCalculator qui implémente l'interface ICalculator. Cette application cliente est ensuite construite à l'aide d'une instance de ClientCalculator.
Il est généralement conseillé de spécifier de façon déclarative les informations de liaison et d'adresse dans la configuration plutôt que de manière impérative dans le code. La définition de points de terminaison dans le code s'avère généralement peu pratique car les liaisons et les adresses pour un service déployé sont en général différentes de celles utilisées au cours du développement du service. Plus généralement, le fait de laisser les informations de liaison et d'adressage hors du code permet leur modification sans qu'il soit nécessaire de recompiler ou de redéployer l'application.
Vous pouvez exécuter toutes les étapes de configuration suivantes à l'aide de Configuration Editor Tool (SvcConfigEditor.exe).
Pour obtenir la copie source de cet exemple, consultez l'exemple Basic Binding.
Spécification d'une liaison de client dans la configuration
Utilisez l'outil Svcutil.exe à partir de la ligne de commande pour générer le code à partir des métadonnées de service.
Svcutil.exe <service's Metadata Exchange (MEX) address or HTTP GET address>
Le client généré contient l'interface ICalculator qui définit le contrat de service auquel l'implémentation du client doit satisfaire.
Le client généré contient également l'implémentation de ClientCalculator.
Svcutil.exe génère également la configuration du client qui utilise la classe BasicHttpBinding. Lorsque vous utilisez Visual Studio, nommez ce fichier App.config. Notez que les informations d'adresse et de liaison ne sont pas spécifiées n'importe où à l'intérieur de l'implémentation du service. Par ailleurs, il n'est pas nécessaire d'écrire du code pour récupérer ces informations du fichier de configuration.
Créez une instance de ClientCalculator dans une application, puis appelez les opérations de service.
Compilez, puis exécutez le client.
Voir aussi
Concepts
Utilisation de liaisons pour configurer des services et des clients