Максимальный размер буфера был превышен при чтении данных MTOM

Мне нужно использовать внешний веб-сервис, но я получаю следующую ошибку:

Максимальный размер буфера (65536) был превышен при чтении данных MTOM

До сегодняшнего дня я использовал тот же сервис, используя следующую конфигурацию:

    <bindings>
        <basicHttpBinding>
            <binding name="BOServiceSoap11Binding">
                <security mode="Transport" />
            </binding>
            <binding name="BOServiceSoap11Binding1" />
        </basicHttpBinding>
        <customBinding>
            <binding name="BOServiceSoap12Binding">
                <mtomMessageEncoding messageVersion="Soap12" />
                <httpsTransport />

            </binding>
        </customBinding>
    </bindings>

Вот мой конечный результат:

<endpoint address="https://x.com/live-api/services/BOService.BOServiceHttpsSoap12Endpoint/"
            binding="customBinding" bindingConfiguration="BOServiceSoap12Binding"
            contract="xServiceReference.BOServicePortType" name="BOServiceHttpsSoap12Endpoint" />

Я попытался увеличить MaxReceivedMessageSize, добавив следующие теги к тегу customBinding и его дочерним элементам:

MaxReceivedMessageSize="2147483647" maxArrayLength="2147483647" maxStringContentLength="2147483647" maxBufferSize="2147483647"

Как мне настроить свою конечную точку, чтобы получить правильный ответ?

Спасибо,

1 ответ

Решение

Я изменил свою конфигурацию, как показано ниже:

  <customBinding>
    <binding name="BOServiceSoap12Binding">
      <mtomMessageEncoding messageVersion="Soap12" maxBufferSize="2147483647"/>
      <httpsTransport maxReceivedMessageSize="2147483647"/>
    </binding>
  </customBinding>

Теперь все работает как положено.

Другие вопросы по тегам