Vue d’ensemble des liaisons Windows Communication Foundation
Les liaisons sont des objets qui servent à spécifier les détails de communication requis pour se connecter au point de terminaison d’un service WCF (Windows Communication Foundation). Chaque point de terminaison d'un service WCF requiert la définition correcte d'une liaison. Cette rubrique décrit les types de détails de communication définis par les liaisons, les éléments d’une liaison, les liaisons incluses dans WCF, et comment une liaison peut être spécifiée pour un point de terminaison.
Ce que définit une liaison
Les informations contenues dans une liaison peuvent être basiques ou très complexes. 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. 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 suivantes :
Protocoles
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.
Encodage
Détermine l'encodage de message (par exemple, texte ou binaire).
Transport
Détermine le protocole de transport sous-jacent à utiliser (par exemple, TCP ou HTTP).
Les éléments d’une liaison
Une liaison est constituée fondamentalement d’une pile ordonnée d’éléments de liaison, chacun spécifiant une partie des informations de communication requises pour se connecter à un point de terminaison de service. Les deux couches inférieures de la pile sont requises. À la base de la pile se trouve l'élément de liaison de transport, et juste au-dessus de celui-ci se trouve l'élément qui contient les spécifications d'encodage de message. Les éléments de liaison facultatifs qui spécifient les autres protocoles de communication sont disposés en couches sur ces deux éléments requis. Pour plus d’informations sur ces éléments de liaison et leur classement correct, consultez Liaisons personnalisées.
Liaisons fournies par le système
Les informations contenues dans une liaison peuvent être complexes et certains paramètres peuvent ne pas être compatibles avec d’autres. Pour cette raison, WCF inclut un ensemble de liaisons fournies par le système. Ces liaisons sont conçues pour couvrir la plupart des exigences d’applications. Les classes suivantes représentent quelques exemples de liaisons fournies par le système :
BasicHttpBinding : une liaison de protocole HTTP adaptée à la connexion à des services Web conformes à la spécification WS-I Basic Profile (par exemple, services basés sur les services Web ASP.NET).
WSHttpBinding: une liaison interopérable adaptée à la connexion à des points de terminaison conformes aux protocoles WS-*.
NetNamedPipeBinding : utilise le .NET Framework pour se connecter à d’autres points de terminaison WCF sur le même ordinateur.
NetMsmqBinding : utilise le .NET Framework pour créer des connexions de message en file d’attente avec d’autres points de terminaison WCF.
NetTcpBinding : cette liaison offre des performances supérieures aux liaisons HTTP et est idéale pour une utilisation dans un réseau local.
Pour une liste complète (ainsi que des descriptions) de toute les liaisons fournies avec WCF, consultez Liaisons fournies par le système.
Utilisation de vos propres liaisons
Si aucune des liaisons fournies par le système ne possède la bonne combinaison de fonctionnalités requise par une application de service, vous pouvez créer votre propre liaison. Il existe deux façons d'effectuer cette opération. Vous pouvez soit créer une liaison à partir d'éléments de liaison préexistants à l'aide d'un objet CustomBinding, soit créer une liaison entièrement définie par l'utilisateur en dérivant de la liaison Binding. Pour plus d’informations sur la création de votre propre liaison à l’aide de ces deux approches, consultez Liaisons personnalisées et Création de liaisons définies par l’utilisateur.
Utilisation des liaisons
L’utilisation des liaisons implique deux étapes simples :
Sélectionner ou définir une liaison. La méthode la plus simple consiste à choisir l’une des liaisons fournies par le système incluses avec WCF, et à l’utiliser avec ses paramètres par défaut. 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. En guise d’alternative, vous pouvez créer une liaison personnalisée ou une liaison définie par l’utilisateur afin de disposer d’un degré de contrôle et de personnalisation plus élevé.
Créer un point de terminaison qui utilise la liaison sélectionnée ou définie.
Code et configuration
Vous pouvez définir des liaisons de deux manières : par le biais de code ou par configuration. Ces deux approches ne dépendent pas du fait que vous utilisez une liaison fournie par le système ou une liaison personnalisée. En général, l’utilisation de code procure un contrôle total sur la définition d’une liaison au moment du design. 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 d’une liaison sans devoir recompiler l’application de service. Cette souplesse est souvent souhaitable car il n’existe aucun moyen de prévoir les exigences spécifiques du matériel sur lequel une application WCF sera déployée. Le fait de conserver les informations de liaison (et d’adressage) hors du code leur permet de changer sans nécessiter de recompilation ou de redéploiement de l’application. Notez que les liaisons définies dans le code sont créées après les liaisons spécifiées dans la configuration, ce qui permet aux liaisons définies dans le code de remplacer celles définies par configuration.