Когда вы создали свое пользовательское связывание в коде, вы также реализовали вместе с ним «YourBindingElement» (производный от StandardBindingElement) и «YourBindingCollectionElement» (производный от StandardBindingCollectionElement)?
Если это так - используйте это для настройки вашей пользовательской привязки, как если бы это была любая другая привязка.
Первым шагом является регистрация вашей привязки в файле app.config или web.config в разделе расширений
<extensions>
<bindingExtensions>
<add name="yourBindingName"
type="YourBinding.YourBindingCollectionElement, YourBindingAssembly" />
</bindingExtensions>
</extensions>
Теперь ваша новая привязка зарегистрирована как «обычная» доступная привязка в WCF. Укажите свою специфику в разделе привязок, как и для других привязок:
<bindings>
<yourBinding>
<binding name="yourBindingConfig"
proxyAddress="...." useDefaultWebProxy="false" />
</yourBinding>
</bindings>
Укажите здесь другие параметры, как определено в вашем классе "... BindingElement".
Наконец, используйте вашу привязку как обычную привязку в ваших службах и / или клиентских разделах в system.serviceModel:
<client>
<endpoint
address="....your url here......"
binding="yourBinding"
bindingConfiguration="yourBindingConfig"
contract="IYourContract"
name="YourClientEndpointName" />
</client>
Я не мог найти много ресурсов о том, как написать свою собственную привязку в коде в Интернете - у Microsoft есть набор образцов WCF / WPF / WF , который включает в себя несколько примеров, из которых я в основном выучил достаточно, чтобы понять это: -)
Есть одна действительно хорошая статья Микеле Леру Бустаманте о создании ваших пользовательских привязок - часть 2 серии, но часть 1 не доступна публично: - (
Вот пример пользовательской привязки в коде, для которого вы можете загрузить полный исходный код: ClearUserNameBinding .
Марк