Search code examples
wcfwcf-data-serviceswcf-bindingwcf-client

.net 4.0 declarative workflow wcf: client reference


Techies-- I tried to use just the default basicHttpBinding with an increase for the maxReceivedMessageSize, but discovered I needed to increase the readQuotas--which I couldn't define without naming the binding.

    <bindings>
      <basicHttpBinding>
          <binding name="DefaultBasicHttpBinding"
             maxBufferPoolSize="2147483647"
             maxReceivedMessageSize="2147483647"
             maxBufferSize="2147483647">
              <readerQuotas
                  maxArrayLength="2147483647"
                  maxBytesPerRead="2147483647"
                  maxDepth="2147483647"
                  maxNameTableCharCount="2147483647"
                  maxStringContentLength="2147483647" />
          </binding>
      </basicHttpBinding>
  </bindings>

Do I need to change something in the way the client web.config is referencing basicHttp? Here's what I have:

    <bindings>
    <!-- Adding TelapointWorkFlowService Bindings -->
    <!-- NOTE: May need to be converted for AppDev standards, leave as is for now. -->
    <basicHttpBinding>
        <binding name="BasicHttpBinding_TelaPointSMService" closeTimeout="00:10:00"
             openTimeout="00:10:00" receiveTimeout="00:15:00" sendTimeout="00:10:00"
             allowCookies="false" bypassProxyOnLocal="false"  
             hostNameComparisonMode="StrongWildcard"
             maxBufferSize="2147483647" maxBufferPoolSize="2147483647" 
             maxReceivedMessageSize="2147483647"
             messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
             useDefaultWebProxy="true">
            <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" 
                maxArrayLength="2147483647"
                maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
            <security mode="None">
                <transport clientCredentialType="None" proxyCredentialType="None"
                    realm="" />
                <message clientCredentialType="UserName" algorithmSuite="Default" />
            </security>
        </binding>
    </basicHttpBinding>

Solution

  • Out of frustration, I changed the line

    <binding name="DefaultBasicHttpBinding" to <binding name=""

    and voilà! The custom quotas/max size settings I needed to assign to this workflow were associated correctly.