In this file the bindings can be configured to provide different configurations for data services and endpoints - specified by the name, which then is used in the service/client configuration.
See Configuring Bindings for Windows Communication Foundation Services for further details and Configuring Timeout Values on a Binding for information about timeout configuration.
If the service has to support the streaming transfer mode - e.g. used for downloading large data branches in the UBIK client, ensure to provide the binding definition for "BasicHttpBinding_UBIKContent" (see example). The client setting "ContentServiceConfig" should be set accordingly. |
<system.serviceModel>
...
<bindings>
<webHttpBinding>
<binding transferMode="Streamed" name="WebHttpBinding_UBIKContent" sendTimeout="00:05:00" maxBufferPoolSize="67108864" maxReceivedMessageSize="67108864" maxBufferSize="67108864" receiveTimeout="01:00:00">
<security mode="Transport">
<transport clientCredentialType="None"/>
</security>
</binding>
</webHttpBinding>
<basicHttpBinding>
<binding name="BasicHttpBinding_IUSAM" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
<security mode="None">
<transport clientCredentialType="None" proxyCredentialType="None" realm=""/>
<message clientCredentialType="UserName" algorithmSuite="Default"/>
</security>
</binding>
<!-- USED FOR STREAMING TRANSFER MODE -->
<binding name="BasicHttpBinding_UBIKContent"
transferMode="Streamed"
sendTimeout="00:05:00"
maxBufferPoolSize="67108864"
maxReceivedMessageSize="67108864"
receiveTimeout="01:00:00">
<security mode="Transport">
<transport clientCredentialType="None" />
</security>
</binding>
</basicHttpBinding>
<wsHttpBinding>
<binding name="WSHttpBinding_IUSAM" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard"
maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
<reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false"/>
<security mode="Transport">
<transport clientCredentialType="None" proxyCredentialType="None" realm=""/>
<message clientCredentialType="Windows" negotiateServiceCredential="true"/>
</security>
</binding>
<binding name="WSHttpBinding_UBIKContent" maxReceivedMessageSize="67108864" receiveTimeout="01:00:00">
<security mode="Transport">
<transport clientCredentialType="None"/>
</security>
</binding>
<binding name="WSHttpBinding_IUBIKPush">
<security mode="Transport">
<transport clientCredentialType="None" />
</security>
</binding>
</wsHttpBinding>
</bindings>
...
</system.serviceModel>
...
<bindings>
<webHttpBinding>
<binding transferMode="Streamed" name="WebHttpBinding_UBIKContent" sendTimeout="00:05:00" maxBufferPoolSize="67108864" maxReceivedMessageSize="67108864" maxBufferSize="67108864" receiveTimeout="01:00:00">
<security mode="Transport">
<transport clientCredentialType="None"/>
</security>
</binding>
</webHttpBinding>
<basicHttpBinding>
<binding name="BasicHttpBinding_IUSAM" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
<security mode="None">
<transport clientCredentialType="None" proxyCredentialType="None" realm=""/>
<message clientCredentialType="UserName" algorithmSuite="Default"/>
</security>
</binding>
<!-- USED FOR STREAMING TRANSFER MODE -->
<binding name="BasicHttpBinding_UBIKContent"
transferMode="Streamed"
sendTimeout="00:05:00"
maxBufferPoolSize="67108864"
maxReceivedMessageSize="67108864"
receiveTimeout="01:00:00">
<security mode="Transport">
<transport clientCredentialType="None" />
</security>
</binding>
</basicHttpBinding>
<wsHttpBinding>
<binding name="WSHttpBinding_IUSAM" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard"
maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
<reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false"/>
<security mode="Transport">
<transport clientCredentialType="None" proxyCredentialType="None" realm=""/>
<message clientCredentialType="Windows" negotiateServiceCredential="true"/>
</security>
</binding>
<binding name="WSHttpBinding_UBIKContent" maxReceivedMessageSize="67108864" receiveTimeout="01:00:00">
<security mode="Transport">
<transport clientCredentialType="None"/>
</security>
</binding>
<binding name="WSHttpBinding_IUBIKPush">
<security mode="Transport">
<transport clientCredentialType="None" />
</security>
</binding>
</wsHttpBinding>
</bindings>
...
</system.serviceModel>