Utilisation de liaisons pour configurer des services et des clientsUsing Bindings to Configure Services and Clients

Les liaisons sont des objets qui spécifient les détails de communication requis pour se connecter à un point de terminaison.Bindings are objects that specify the communication details required to connect to an endpoint. Plus spécifiquement, les liaisons contiennent des informations de configuration utilisées pour créer l’exécution du client ou du service en définissant les caractéristiques des transports, les formats de transmission (encodage de message) et les protocoles à utiliser pour le point de terminaison ou canal client respectif.More specifically, bindings contain configuration information that is used to create the client or service runtime by defining the specifics of transports, wire-formats (message encoding), and protocols to use for the respective endpoint or client channel. Pour créer un service de Windows Communication Foundation (WCF) opérationnel, chaque point de terminaison dans le service requiert une liaison.To create a functioning Windows Communication Foundation (WCF) service, each endpoint in the service requires a binding. Cette rubrique explique ce que sont les liaisons, comment elles sont définies et comment une liaison particulière est spécifiée pour un point de terminaison.This topic explains what bindings are, how they are defined, and how a particular binding is specified for an endpoint.

Ce que définit une liaisonWhat a Binding Defines

Les informations contenues dans une liaison peuvent être basiques ou très complexes.The information in a binding can be very basic or very complex. La liaison la plus basique spécifie uniquement le protocole de transport (par exemple HTTP) qui doit être utilisé pour se connecter au point de terminaison.The most basic binding specifies only the transport protocol (such as HTTP) that must be used to connect to the endpoint. Plus généralement, les informations d'une liaison relatives à la procédure de connexion à un point de terminaison appartiennent à l'une des catégories répertoriées dans le tableau suivant.More generally, the information a binding contains about how to connect to an endpoint falls into one of the categories in the following table.

ProtocolesProtocols
Détermine le mécanisme de sécurité utilisé, soit une fonction de messagerie fiable, soit des paramètres de flux de contexte de transaction.Determines the security mechanism being used, either reliable messaging capability or transaction context flow settings.

TransportTransport
Détermine le protocole de transport sous-jacent à utiliser (par exemple, TCP ou HTTP).Determines the underlying transport protocol to use (for example, TCP or HTTP).

EncodageEncoding
Détermine l'encodage de message, par exemple texte/XML, binaire ou MTOM (Message Transmission Optimization Mechanism), qui détermine la façon dont les messages sont représentés comme flux d'octets sur le câble.Determines the message encoding, for example, text/XML, binary, or Message Transmission Optimization Mechanism (MTOM), which determines how messages are represented as byte streams on the wire.

Liaisons fournies par le systèmeSystem-Provided Bindings

WCF comprend un ensemble de liaisons fournies par le système qui sont conçues pour couvrir la plupart des scénarios et exigences de l’application.WCF includes a set of system-provided bindings that are designed to cover most application requirements and scenarios. Les classes suivantes représentent quelques exemples de liaisons fournies par le système :The following classes represent some examples of system-provided bindings:

  • BasicHttpBinding : liaison de protocole HTTP adaptée à la connexion à des services Web conformes à la spécification WS-I Basic Profile 1.1 (par exemple, services basés sur les services Web ASP.NET [ASMX]).BasicHttpBinding: An HTTP protocol binding suitable for connecting to Web services that conforms to the WS-I Basic Profile 1.1 specification (for example, ASP.NET Web services [ASMX]-based services).

  • WSHttpBinding : liaison de protocole HTTP adaptée à la connexion à des points de terminaison conformes aux protocoles de spécification des services Web.WSHttpBinding: An HTTP protocol binding suitable for connecting to endpoints that conform to the Web services specifications protocols.

  • NetNamedPipeBinding : utilise les technologies d’encodage binaire .NET et de tramage conjointement avec le transport de canal nommé Windows pour se connecter à d’autres points de terminaison WCF sur le même ordinateur.NetNamedPipeBinding: Uses the .NET binary encoding and framing technologies in conjunction with the Windows named pipe transport to connect to other WCF endpoints on the same machine.

  • NetMsmqBinding : utilise les technologies d’encodage binaire .NET et de tramage conjointement avec le Message Queuing (également appelé MSMQ) pour créer des connexions de message en file d’attente avec d’autres points de terminaison WCF.NetMsmqBinding: Uses the .NET binary encoding and framing technologies in conjunction with the Message Queuing (also known as MSMQ) to create queued message connections with other WCF endpoints.

Pour obtenir la liste complète des liaisons fournies par le système, avec des descriptions, consultez liaisons fournies par le système.For a complete list of system-provided bindings, with descriptions, see System-Provided Bindings.

Liaisons personnaliséesCustom Bindings

Si la collection de liaisons fournie par le système n'a pas la combinaison correcte de fonctionnalités requises par une application de service, vous pouvez créer une liaison CustomBinding.If the system-provided binding collection does not have the correct combination of features that a service application requires, you can create a CustomBinding binding. Pour plus d’informations sur les éléments d’une liaison CustomBinding, consultez <customBinding > et liaisons personnalisées.For more information about the elements of a CustomBinding binding, see <customBinding> and Custom Bindings.

Utilisation des liaisonsUsing Bindings

L’utilisation des liaisons implique deux étapes simples :Using bindings entails two basic steps:

  1. Sélectionner ou définir une liaison.Select or define a binding. La méthode la plus simple consiste à choisir l’une des liaisons fournies par le système et à utiliser ses paramètres par défaut.The easiest method is to choose one of the system-provided bindings and use its default settings. Vous pouvez également choisir une liaison fournie par le système et réinitialiser ses valeurs de propriété en fonction de vos spécifications.You can also choose a system-provided binding and reset its property values to suit your requirements. En guise d’alternative, vous pouvez créer une liaison personnalisée et définir chaque propriété selon vos besoins.Alternatively, you can create a custom binding and set every property as required.

  2. Créer un point de terminaison qui utilise cette liaison.Create an endpoint that uses this binding.

Code et configurationCode and Configuration

Vous pouvez définir ou configurer des liaisons par le biais de code ou de configuration.You can define or configure bindings through code or configuration. Ces deux approches sont indépendantes du type de liaison utilisé, par exemple si vous utilisez une liaison CustomBinding ou fournie par le système.These two approaches are independent of the type of binding used, for example, whether you are using a system-provided or a CustomBinding binding. En général, l’utilisation de code permet de bénéficier d’un contrôle total sur la définition d’une liaison lorsque vous compilez.In general, using code gives you complete control over the definition of a binding when you compile. L’utilisation de la configuration, en revanche, permet à un administrateur système ou à l’utilisateur d’un service ou client WCF de modifier les paramètres des liaisons.Using configuration, on the other hand, allows a system administrator or the user of a WCF service or client to change the parameters of bindings. Cette souplesse est souvent souhaitable car il n’existe aucun moyen de prédire les exigences et les conditions réseau spécifiques dans lesquelles une application WCF doit être déployée.This flexibility is often desirable because there is no way to predict the specific machine requirements and network conditions into which a WCF application is to be deployed. Le fait de séparer les informations de liaison (et d'adressage) du code permet aux administrateurs de modifier les détails de liaison sans avoir à recompiler ou à redéployer l'application.Separating the binding (and addressing) information from the code allows administrators to change the binding details without having to recompile or redeploy the application. Notez que si la liaison est définie dans du code, elle remplace toute définition basée sur la configuration effectuée dans le fichier de configuration.Note that if the binding is defined in code, it overwrites any configuration-based definitions made in the configuration file. Pour obtenir des exemples de ces approches, consultez les rubriques suivantes :For examples of these approaches, see the following topics:

Voir aussiSee also