Points de terminaison : Adresses, liaisons et contratsEndpoints: Addresses, Bindings, and Contracts

Toutes les communications avec un service Windows Communication Foundation (WCF) s’effectue via le points de terminaison du service.All communication with a Windows Communication Foundation (WCF) service occurs through the endpoints of the service. Points de terminaison fournissent les clients l’accès à la fonctionnalité offerte par un service WCF.Endpoints provide clients access to the functionality offered by a WCF service.

Chaque point de terminaison se compose de quatre propriétés :Each endpoint consists of four properties:

  • Une adresse qui indique où rechercher le point de terminaison.An address that indicates where the endpoint can be found.

  • Une liaison qui spécifie comment un client peut communiquer avec le point de terminaison.A binding that specifies how a client can communicate with the endpoint.

  • Un contrat qui identifie les opérations disponibles.A contract that identifies the operations available.

  • L'ensemble des comportements qui spécifient les détails d'implémentation locaux du point de terminaison.A set of behaviors that specify local implementation details of the endpoint.

Cette rubrique traite de cette structure de point de terminaison et explique comment elle est représentée dans le modèle d’objet WCF.This topic discusses this endpoint structure and explains how it is represented in the WCF object model.

Structure d'un point de terminaisonThe Structure of an Endpoint

Chaque point de terminaison comprend les éléments suivants :Each endpoint consists of the following:

  • Adresse : L’adresse identifie le point de terminaison et indique le potentiel de manière unique les consommateurs du service dans lequel il se trouve.Address: The address uniquely identifies the endpoint and tells potential consumers of the service where it is located. Elle est représentée dans le modèle d’objet WCF par le EndpointAddress classe.It is represented in the WCF object model by the EndpointAddress class. Une classe EndpointAddress contient :An EndpointAddress class contains:

    • Une propriété Uri, qui représente l'adresse du service.A Uri property, which represents the address of the service.

    • Une propriété Identity qui représente l’identité de sécurité du service et une collection d’en-tête de message facultatifs.An Identity property, which represents the security identity of the service and a collection of optional message headers. Les en-têtes de message facultatifs sont utilisés pour fournir des informations d'adressage supplémentaires et plus détaillées afin d'identifier le point de terminaison ou d'interagir avec lui.The optional message headers are used to provide additional and more detailed addressing information to identify or interact with the endpoint.

    Pour plus d’informations, consultez spécification d’une adresse de point de terminaison.For more information, see Specifying an Endpoint Address.

  • Liaison : La liaison spécifie le mode de communication avec le point de terminaison.Binding: The binding specifies how to communicate with the endpoint. Cela concerne :This includes:

    • Le protocole de transport à utiliser (par exemple, TCP ou HTTP).The transport protocol to use (for example, TCP or HTTP).

    • L'encodage à utiliser pour les messages (par exemple, texte ou binaire).The encoding to use for the messages (for example, text or binary).

    • Les exigences de sécurité nécessaires (par exemple, SSL ou la sécurité des messages SOAP).The necessary security requirements (for example, SSL or SOAP message security).

    Pour plus d’informations, consultez vue d’ensemble des liaisons WCF.For more information, see WCF Bindings Overview. Une liaison est représentée dans le modèle objet WCF par la classe de base abstraite Binding.A binding is represented in the WCF object model by the abstract base class Binding. Pour la plupart des scénarios, les utilisateurs peuvent utiliser l'une des liaisons fournies par le système.For most scenarios, users can use one of the system-provided bindings. Pour plus d’informations, consultez System-Provided Bindings.For more information, see System-Provided Bindings.

  • Contrats : Le contrat définit les fonctionnalités que le point de terminaison expose au client.Contracts: The contract outlines what functionality the endpoint exposes to the client. Un contrat spécifie :A contract specifies:

    • Quelles opérations peuvent être appelées par un client.What operations can be called by a client.

    • Le format du message.The form of the message.

    • Le type de paramètres d'entrée ou les données requis pour appeler l'opération.The type of input parameters or data required to call the operation.

    • Le type de traitement ou le message de réponse que le client peut attendre.What type of processing or response message the client can expect.

    Pour plus d’informations sur la définition d’un contrat, consultez Designing Service Contracts.For more information about defining a contract, see Designing Service Contracts.

  • Comportements : Vous pouvez utiliser des comportements de point de terminaison pour personnaliser le comportement du point de terminaison de service local.Behaviors: You can use endpoint behaviors to customize the local behavior of the service endpoint. Pour cela, les comportements de point de terminaison participant au processus de création d’un service d’exécution WCF.Endpoint behaviors achieve this by participating in the process of building a WCF runtime. Un exemple de comportement de point de terminaison est la propriété ListenUri qui vous permet de spécifier une adresse d'écoute différente de l'adresse SOAP ou WSDL (Web Services Description Language).An example of an endpoint behavior is the ListenUri property, which allows you to specify a different listening address than the SOAP or Web Services Description Language (WSDL) address. Pour plus d’informations, consultez ClientViaBehavior.For more information, see ClientViaBehavior.

Définition des points de terminaisonDefining Endpoints

L'adresse du point de terminaison pour un service peut être spécifiée de manière impérative en utilisant le code ou de façon déclarative par la configuration.You can specify the endpoint for a service either imperatively using code or declaratively through configuration. Pour plus d'informations, voir Procédure : Créer un point de terminaison de Service dans la Configuration et Comment : Créer un point de terminaison de Service dans le Code.For more information, see How to: Create a Service Endpoint in Configuration and How to: Create a Service Endpoint in Code.

Dans cette sectionIn This Section

Cette section explique à quoi servent les liaisons, les points de terminaison et les adresses, indique comment configurer une liaison et un point de terminaison et montre comment utiliser le comportement ClientVia et la propriété ListenUri.This section explains the purpose of bindings, endpoints, and addresses; shows how to configure a binding and an endpoint; and demonstrates how to use the ClientVia behavior and ListenUri property.

AdressesAddresses
Décrit la façon dont les points de terminaison sont adressés dans WCF.Describes how endpoints are addressed in WCF.

liaisonsBindings
Décrit comment les liaisons sont utilisées pour spécifier le transport, l’encodage et les détails de protocole requis pour que les clients et les services puissent communiquer l’un l’autre.Describes how bindings are used to specify the transport, encoding, and protocol details required for clients and services to communicate with each other.

ContratsContracts
Décrit comment les contrats définissent les méthodes d'un service.Describes how contracts define the methods of a service.

Guide pratique pour Créer un point de terminaison de Service dans la ConfigurationHow to: Create a Service Endpoint in Configuration
Décrit comment créer un point de terminaison de service dans la configuration.Describes how to create a service endpoint in configuration.

Guide pratique pour Créer un point de terminaison de Service dans le CodeHow to: Create a Service Endpoint in Code
Décrit comment créer un point de terminaison de service dans le code.Describes how to create a service endpoint in code.

Guide pratique pour Utiliser Svcutil.exe pour valider le Code de Service compiléHow to: Use Svcutil.exe to Validate Compiled Service Code
Décrit comment détecter les erreurs dans les configurations et les implémentations de service sans héberger le service en utilisant le ServiceModel Metadata Utility Tool (Svcutil.exe).Describes how to detect errors in service implementations and configurations without hosting the service using the ServiceModel Metadata Utility Tool (Svcutil.exe).

Voir aussiSee also