Lorsque vous avez créé votre liaison personnalisée dans le code, avez-vous également implémenté un "YourBindingElement" (dérivant de StandardBindingElement) et un "YourBindingCollectionElement" (dérivant de StandardBindingCollectionElement) avec lui?
Si tel est le cas, utilisez-le pour configurer votre liaison personnalisée, comme s'il s'agissait d'une autre liaison.
La première étape consiste à enregistrer votre obligatoire dans le fichier app.config ou web.config dans la section Extensions de <system.serviceModel>
<extensions>
<bindingExtensions>
<add name="yourBindingName"
type="YourBinding.YourBindingCollectionElement, YourBindingAssembly" />
</bindingExtensions>
</extensions>
Maintenant, votre nouvelle liaison est enregistré comme « normal "liaison disponible dans WCF. Indiquez vos détails dans la section fixations comme pour les autres liaisons aussi:
<bindings>
<yourBinding>
<binding name="yourBindingConfig"
proxyAddress="...." useDefaultWebProxy="false" />
</yourBinding>
</bindings>
autres paramètres ici Indiquez, tels que définis dans la classe « ... BindingElement ».
Enfin, utilisez votre liant comme une liaison normale dans vos services et/ou des sections de clients dans system.serviceModel:
<client>
<endpoint
address="....your url here......"
binding="yourBinding"
bindingConfiguration="yourBindingConfig"
contract="IYourContract"
name="YourClientEndpointName" />
</client>
Je ne pouvais pas vraiment trouver beaucoup de ressources sur la façon d'écrire votre propre liaison dans le code sur le Web - Microsoft a un WCF/WPF/WF sample kit qui comprend quelques exemples dont j'ai appris assez fondamentalement pour le comprendre :-)
Il ya un très bon article by Michele Leroux Bustamante sur la création de vos liaisons personnalisées - partie 2 d'une série, mais partie 1 n'est pas disponible en public :-(
Voici un exemple de liaison personnalisée dans le code pour lequel vous pouvez télécharger le code source complet: ClearUserNameBinding.
Marc