Пользовательские привязки
Класс CustomBinding можно использовать, когда ни одна из системных привязок не соответствует требованиям службы. Все привязки создаются из упорядоченных наборов элементов привязки. Пользовательские привязки можно создавать из набора предоставляемых системой элементов привязки или в них можно включать определяемые пользователем элементы привязки. Пользовательские элементы привязки можно применять, например, для использования в конечной точке службы новых транспортов или кодировщиков. Примеры работы см. в примерах настраиваемых привязок. Дополнительные сведения см. в разделе customBinding>.<
Создание пользовательской привязки
Пользовательские привязки создаются с использованием одного из конструкторов CustomBinding из коллекции элементов привязки, которые располагаются в определенном порядке.
Вверху расположен необязательный класс TransactionFlowBindingElement, который разрешает поток транзакций.
Далее следует необязательный класс ReliableSessionBindingElement, который обеспечивает сеанс и механизмы сортировки, в соответствии со спецификацией WS-ReliableMessaging. Сеанс может включать посредников SOAP и транспорта.
Далее следует необязательный класс SecurityBindingElement, который предоставляет возможности безопасности, такие как авторизация, проверка подлинности, защита и конфиденциальность.
Далее следует необязательный класс CompositeDuplexBindingElement, который обеспечивает возможность двусторонней дуплексной связи с транспортным протоколом, изначально не поддерживающим дуплексную связь, таким как HTTP.
Далее следует необязательный класс OneWayBindingElement), который обеспечивает одностороннюю связь.
Далее следует обязательный элемент привязки безопасности потока, который может быть одним из следующих.
Далее следует обязательный элемент привязки для кодирования сообщений. Можно использовать свой кодировщик транспорта или одну из трех привязок кодировки сообщений:
Внизу расположен обязательный элемент транспорта. Вы можете использовать собственный транспорт или один из следующих элементов привязки транспорта Windows Communication Foundation (WCF):
В следующей таблице приведены сводные данные по параметрам каждого уровня.
Уровень | Параметры | Обязательное поле |
---|---|---|
Транзакции | TransactionFlowBindingElement | No |
Надежность | ReliableSessionBindingElement | No |
Контроль доступа | SecurityBindingElement | No |
Кодировка | Текст, двоичное, механизм оптимизации передачи сообщений (MTOM), пользовательское | Да |
Транспорт | TCP, HTTP, HTTPS, именованные каналы (также называются IPC), одноранговый (P2P), очередь сообщений (также называется MSMQ), пользовательский | Да |
Кроме того, можно определить собственные элементы привязки и вставить их между любыми из приведенных выше заданных уровней.