Копировать ссылку на страницу

В секции system.serviceModel задаются параметры конфигурации ServiceModel для Windows Communication Foundation (WCF): максимальный размер пакета данных и безопасности канала передачи. При необходимости можно изменить значения атрибутов под особенности работы веб-сервисов.

Структура секции:

 

<system.serviceModel>
<bindings>
  <basicHttpBinding>
      <binding name="BasicHttpEndpointBinding"
        maxBufferPoolSize="{Максимальный объем памяти для диспетчера
          буферов сообщений}"
        maxBufferSize="{Максимальный размер буфера, хранящего сообщения
          во время их обработки}"
        maxReceivedMessageSize="{Максимальный размер сообщения}">
        <readerQuotas maxArrayLength="{Максимально допустимая длина
          массива данных}"
        maxStringContentLength="{Максимальное допустимое количество
          знаков в содержимом элемента XML}"
        maxBytesPerRead="{Максимально допустимое число байтов
          на операцию чтения}"
        maxDepth="{Максимальная глубина вложенного узла на операцию чтения}"
        maxNameTableCharCount="{Максимально допустимое количество символов
          в имени таблицы}"
        messageEncoding="{Формат для кодирования сообщений, передаваемых по
          SOAP}"
        transferMode="{Признак буферизации сообщений или передачи их потоком
          по запросу}"/>

      <security mode="None">
         {Параметры безопасности канала}
      </security>
      </binding>
    </basicHttpBinding>

</bindings>
<services>
   {}
</services>
<behaviors>
   {}
</behaviors>
</system.serviceModel>

bindings – описание привязок сервиса. Каждая запись идентифицируется по уникальному свойству name.

Binding – описание привязки сервиса. Используется для настройки различных привязок сервиса.

Name. Имя привязки.

MaxBufferPoolSize. Максимальный объем памяти, выделяемой для диспетчера буферов сообщений, или объем информации, которую можно передать с помощью буфера за один раз.

MaxBufferSize. Максимальный размер буфера, хранящего сообщения во время их обработки для конечной точки, настроенной с использованием привязки. Значение указывается в байтах.

MaxReceivedMessageSize. Максимальный размер сообщения с заголовками, которое можно получить по каналу, настроенному с использованием данной привязки. Значение указывается в байтах. Положительное целое число.

MaxArrayLength. Максимально допустимая длина массива данных, получаемых от клиента Windows Communication Foundation (WCF).

MaxStringContentLength. Максимальное допустимое количество знаков в содержимом элемента XML. Положительное целое число.

MaxBytesPerRead. Максимально допустимое число байтов на операцию чтения. Положительное целое число.

MaxDepth. Максимальная глубина вложенного узла на операцию чтения. Положительное целое число.

MaxNameTableCharCount. Максимальное допустимое количество символов в имени таблицы. Положительное целое число.

Примечание

Максимальное значение параметров MaxBufferPoolSize, MaxBufferSize, MaxReceivedMessageSize, MaxArrayLength, MaxStringContentLength, MaxBytesPerRead, MaxDepth, MaxNameTableCharCount составляет 2 ГБ. Уменьшать значения параметров следует, когда необходимо ограничить создание и передачу интегрированной системой файлов больших размеров.

messageEncoding. Формат для кодирования сообщений, передаваемых по SOAP.

transferMode. Признак буферизации сообщений или передачи их потоком по запросу.

security – параметры безопасности канала передачи данных. Подробнее см. раздел «Параметры безопасности канала».

services – параметры веб-сервисов, определяющие контракт службы, поведение и конечные точки сервисов интеграции. Значения атрибутов секции менять не рекомендуется.

behaviors – параметры запроса данных у веб-сервисов. Значения атрибутов секции менять не рекомендуется.

В нижеследующем примере нет ограничений на объем передаваемой информации, поэтому указаны максимальные значения параметров секции.

Подробнее Пример

 

<system.serviceModel>
<bindings>
  <basicHttpBinding>
      <binding name="BasicHttpEndpointBinding"
        maxBufferPoolSize="2147483647"
        maxBufferSize="2147483647"
        maxReceivedMessageSize="2147483647">
      <readerQuotas maxArrayLength="2147483647"
        maxStringContentLength="2147483647"
        maxBytesPerRead="2147483647"
        maxDepth="2147483647"
        maxNameTableCharCount="2147483647"
        messageEncoding="Text"
        transferMode="Buffered" />
      <security mode="None">
        <transport clientCredentialType="None" />
      </security>
      </binding>
  </basicHttpBinding>
  <webHttpBinding>
      <binding name="BasicHttpEndpointBinding" maxBufferPoolSize="2147483647"
        maxBufferSize="2147483647"
        maxReceivedMessageSize="2147483647">
        <readerQuotas maxArrayLength="2147483647"
            maxStringContentLength="2147483647"
            maxBytesPerRead="2147483647" maxDepth="2147483647"
            maxNameTableCharCount="2147483647" />
        <security mode="None">
          <transport clientCredentialType="None" />
        </security>
      </binding>
  </webHttpBinding>
</bindings>
<services>
  <service behaviorConfiguration=
    "NpoComputer.IntegrationServices.IntegrationServices.WebServicesBehavior"
        name="NpoComputer.IntegrationServices.IntegrationServices">
    <endpoint address="datacontract" binding="basicHttpBinding"
        bindingConfiguration="BasicHttpEndpointBinding" name="WebServicesComplex"
          bindingNamespace=http://docs.npo-comp.ru/IntegrationServices/5.2/
            contract="NpoComputer.IntegrationServices.IWebServiceDataContract" />
    <endpoint address="token" binding="basicHttpBinding"
        bindingConfiguration="BasicHttpEndpointBinding" name="HTTPTokenSrv"
          contract="NpoComputer.IntegrationServices.IWebServicesToken" />
    <endpoint address="" binding="basicHttpBinding"
        bindingConfiguration="BasicHttpEndpointBinding" name="HTTPTokenAuth"
          contract="NpoComputer.IntegrationServices.IWebServices" />
  </service>
</services>

</system.serviceModel>

© 2016 Компания DIRECTUM Сообщество пользователей DIRECTUM