Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Определяет безопасную, надежную и совместимую привязку, которая подходит для дуплексных контрактов служб или обмена данными через посредников SOAP.
<configuration>
<system.serviceModel>
<bindings>
<wsDualHttpBinding>
Синтаксис
<wsDualHttpBinding>
<binding name="String"
closeTimeout="TimeSpan"
openTimeout="TimeSpan"
receiveTimeout="TimeSpan"
sendTimeout="TimeSpan"
bypassProxyOnLocal="Boolean"
clientBaseAddress="URI"
transactionFlow="Boolean"
hostNameComparisonMode="StrongWildCard/Exact/WeakWildcard"
maxBufferPoolSize="integer"
maxReceivedMessageSize="Integer"
messageEncoding="Text/Mtom"
proxyAddress="URI"
textEncoding="Unicode/BigEndianUnicode/UTF8"
useDefaultWebProxy="Boolean">
<reliableSession ordered="Boolean"
inactivityTimeout="TimeSpan" />
<security mode="None/Message">
<message clientCredentialType="None/Windows/UserName/Certificate/CardSpace"
negotiateServiceCredential="Boolean"
algorithmSuite="Basic128/Basic192/Basic256/Basic128Rsa15/Basic256Rsa15/TripleDes/TripleDesRsa15/Basic128Sha256/Basic192Sha256/TripleDesSha256/Basic128Sha256Rsa15/Basic192Sha256Rsa15/Basic256Sha256Rsa15/TripleDesSha256Rsa15" />
</security>
<readerQuotas maxArrayLength="Integer"
maxBytesPerRead="Integer"
maxDepth="Integer"
maxNameTableCharCount="Integer"
maxStringContentLength="Integer" />
</binding>
</wsDualHttpBinding>
Атрибуты и элементы
В следующих разделах описаны атрибуты, дочерние элементы и родительские элементы
Attributes
| Свойство | Description |
|---|---|
| bypassProxyOnLocal | Логическое значение, указывающее, следует ли обходить прокси-сервер для локальных адресов. Значение по умолчанию — false. |
| clientBaseAddress | Универсальный код ресурса (URI), который задает базовый адрес, который клиент прослушивает для сообщений ответа от службы. Если задано, этот адрес (плюс идентификатор per-channelGUID) используется для прослушивания. Если значение не задано, базовый адрес клиента создается в определенной форме транспорта. Значение по умолчанию — null. |
| closeTimeout | TimeSpan Значение, указывающее интервал времени, предоставленный для завершения операции закрытия. Это значение должно быть больше или равно Zero. Значение по умолчанию — 00:01:00. |
| hostnameComparisonMode | Указывает режим сравнения имен узла HTTP, используемый для синтаксического анализа URI. Этот атрибут имеет тип HostNameComparisonMode, который указывает, используется ли имя узла для достижения службы при сопоставлении с URI. Значение по умолчанию, StrongWildcardкоторое игнорирует имя узла в совпадении. |
| maxBufferPoolSize | Целое число, указывающее максимальный размер буферного пула для этой привязки. Значение по умолчанию — 524 288 байт (512 * 1024). Во многих частях Windows Communication Foundation (WCF) используются буферы. Создание и уничтожение буферов каждый раз, когда они используются, является дорогостоящим, а сбор мусора для буферов также является дорогостоящим. С помощью буферных пулов можно взять буфер из пула, использовать его и вернуть его в пул после завершения. Таким образом, не требуется затраты на создание и уничтожение буферов. |
| maxReceivedMessageSize | Положительное целое число, указывающее максимальный размер сообщения в байтах, включая заголовки, которые можно получить на канале, настроенном с этой привязкой. Отправитель сообщения, превышающего это ограничение, получит ошибку SOAP. Получатель удаляет сообщение и создает запись события в журнале трассировки. Значение по умолчанию — 65536. |
| messageEncoding | Определяет кодировщик, используемый для кодирования сообщения. Допустимые значения включают следующие значения: — Текст: используйте кодировщик текстовых сообщений. — Mtom: используйте кодировщик организации передачи сообщений 1.0 (MTOM). — Значение по умолчанию — Text. Этот атрибут имеет тип WSMessageEncoding. |
| имя | Строка, содержащая имя конфигурации привязки. Это значение должно быть уникальным, так как оно используется в качестве идентификации привязки. Начиная с .NET Framework 4 привязки и поведение не требуются для имени. Дополнительные сведения о конфигурации по умолчанию и безымяных привязках и поведении см. в статье "Упрощенная конфигурация " и "Упрощенная конфигурация" для служб WCF. |
| openTimeout | TimeSpan Значение, указывающее интервал времени, предоставленного для завершения операции открытия. Это значение должно быть больше или равно Zero. Значение по умолчанию — 00:01:00. |
| proxyAddress | Универсальный код ресурса (URI), указывающий адрес прокси-сервера HTTP. В useDefaultWebProxy противном случае trueэтот параметр должен быть null. Значение по умолчанию — null. |
| receiveTimeout | TimeSpan Значение, указывающее интервал времени, предоставленного для завершения операции получения. Это значение должно быть больше или равно Zero. Значение по умолчанию — 00:01:00. |
| sendTimeout | TimeSpan Значение, указывающее интервал времени, предоставленного для завершения операции отправки. Это значение должно быть больше или равно Zero. Значение по умолчанию — 00:01:00. |
| textEncoding | Задает кодировку набора символов, которая будет использоваться для создания сообщений в привязке. Допустимые значения включают следующие значения: — BigEndianUnicode: кодировка Unicode BigEndian. — Юникод: 16-разрядная кодировка. — UTF8: 8-разрядная кодировка Значение по умолчанию — UTF8. Этот атрибут имеет тип Encoding. |
| transactionFlow | Логическое значение, указывающее, поддерживает ли привязка поток WS-Transactions. Значение по умолчанию — false. |
| useDefaultWebProxy | Логическое значение, указывающее, используется ли автоматически настроенный HTTP-прокси системы. Адрес прокси-сервера должен быть null (т. е. не задан), если этот атрибут имеет значение true. Значение по умолчанию — true. |
Дочерние элементы
| Элемент | Description |
|---|---|
| <безопасность> | Определяет параметры безопасности для привязки. Этот элемент имеет тип WSDualHttpSecurityElement. |
| <readerQuotas> | Определяет ограничения сложности сообщений SOAP, которые могут обрабатываться конечными точками, настроенными с помощью этой привязки. Этот элемент имеет тип XmlDictionaryReaderQuotasElement. |
| <reliableSession> | Указывает, установлены ли надежные сеансы между конечными точками канала. |
Родительские элементы
| Элемент | Description |
|---|---|
| <Привязки> | Этот элемент содержит коллекцию стандартных и пользовательских привязок. |
Замечания
Предоставляет WSDualHttpBinding ту же поддержку протоколов веб-службы, что WSHttpBindingи протоколы, но для использования с дуплексными контрактами.
WSDualHttpBinding поддерживает только безопасность SOAP и требует надежного обмена сообщениями. Для этой привязки требуется, чтобы у клиента был общедоступный универсальный код ресурса (URI), предоставляющий конечную точку обратного вызова для службы. Это предоставляется атрибутом clientBaseAddress . Двойная привязка предоставляет IP-адрес клиента службе. Клиент должен использовать безопасность, чтобы убедиться, что он подключается только к службам, которым он доверяет.
Эту привязку можно использовать для надежного взаимодействия с помощью одного или нескольких посредников SOAP.
По умолчанию эта привязка создает стек среды выполнения с WS-ReliableMessaging для надежности, WS-Security для обеспечения безопасности сообщений и проверки подлинности, HTTP для доставки сообщений и кодировки текстовых и XML-сообщений.
Example
<configuration>
<system.ServiceModel>
<bindings>
<wsDualHttpBinding>
<binding closeTimeout="00:00:10"
openTimeout="00:00:20"
receiveTimeout="00:00:30"
sendTimeout="00:00:40"
bypassProxyOnLocal="false"
clientBaseAddress="http://localhost:8001/client/"
transactionFlow="true"
hostNameComparisonMode="WeakWildcard"
maxReceivedMessageSize="1000"
messageEncoding="Mtom"
proxyAddress="http://foo/bar"
textEncoding="utf-16"
useDefaultWebProxy="false">
<reliableSession ordered="false"
inactivityTimeout="00:02:00" />
<security mode="None">
<message clientCredentialType="None"
negotiateServiceCredential="false"
algorithmSuite="Aes128" />
</security>
</binding>
</wsDualHttpBinding>
</bindings>
</system.ServiceModel>
</configuration>