<system.serviceModel>

Этот раздел конфигурации содержит все элементы конфигурации ServiceModel Windows Communication Foundation (WCF).

<Конфигурации>
  <system.serviceModel>

Синтаксис

<system.serviceModel>
  <behaviors>
  </behaviors>
  <bindings>
  </bindings>
  <client>
  </client>
  <comContracts>
  </comContracts>
  <commonBehaviors>
  </commonBehaviors>
  <diagnostics>
  </diagnostics>
  <extensions>
  </extensions>
  <protocolMapping>
  </protocolMapping>
  <routing>
  </routing>
  <serviceHostingEnvironment>
  </serviceHostingEnvironment>
  <services>
  </services>
  <standardEndpoints>
  </standardEndpoints>
  <tracking>
  </tracking>
</system.serviceModel>

Атрибуты и элементы

В следующих разделах описаны атрибуты, дочерние и родительские элементы.

Атрибуты

None

Дочерние элементы

Элемент Описание
<Поведения> Данный раздел определяет две дочерние коллекции с именами endpointBehaviors и serviceBehaviors. Каждая коллекция определяет элементы поведений, используемые конечными точками и службами соответственно. Каждый элемент поведения идентифицируется по уникальному атрибуту name.
<Привязки> В этом разделе содержится коллекция стандартных и пользовательских привязок. Каждая запись идентифицируется по уникальному свойству name. Службы используют привязки, связывая их с помощью параметра name.
<Клиента> Данный раздел содержит список конечных точек, которые клиент использует для подключения к службе.
<comContracts> В данном разделе определяются контракты COM, которые разрешены для обеспечения взаимодействия WCF и COM.
<commonBehaviors> Этот раздел может быть определен только в файле machine.config. В нем определяются две дочерние коллекции с именами endpointBehaviors и serviceBehaviors. Каждая коллекция определяет элементы поведения, используемые всеми конечными точками и службами WCF на компьютере соответственно. Если поведение определено в обоих <commonBehaviors> разделах и <behaviors> , ему отдается предпочтение.<>
<диагностика> В этом разделе содержатся параметры возможностей диагностики WCF. Пользователь может включить или отключить трассировку, счетчики производительности и провайдер инструментария WMI, а также может добавлять специальные фильтры сообщений.
<Расширения> Данный раздел содержит коллекцию расширений, которые позволяют пользователю создавать определяемые пользователем привязки, поведения и другие виды расширений.
<protocolMapping> Это раздел определяет набор сопоставления протоколов по умолчанию между схемами транспортных протоколов (например, http, net.tcp, net.pipe и т. д.) и привязками WCF.
<Маршрутизации> В этом разделе определяется набор фильтров маршрутизации, которые определяют тип Windows Communication Foundation (WCF),MessageFilter который будет использоваться при оценке входящих сообщений, а также таблицы маршрутизации, определяющие целевые конечные точки для отправки сообщений при совпадении фильтра.
<serviceHostingEnvironment> Этот раздел определяет тип, который среда размещения служб создает для определенного транспорта. Если данный раздел пуст, то используется тип, заданный по умолчанию.
<Услуги> Раздел содержит коллекцию служб. Для каждой службы, определенной в сборке, данный элемент содержит элемент service, который задает параметры для данной службы.
<standardEndpoints> В этом разделе определяется коллекция конечных точек, которые являются пригодными для многократного использования стандартными конечными точками. Значение одного или нескольких атрибутов стандартной конечной точки, обозначающих адрес, привязку или контракт, является фиксированным. Например, в конечной точке обнаружения фиксированным является контракт. По аналогии с определением пользовательских привязок можно также использовать стандартные конечные точки для расширения конечной точки службы за счет новых свойств.
<Отслеживания> В этом разделе определяются параметры отслеживания для службы рабочих процессов.

Родительские элементы

Элемент Описание
<Конфигурации> Корневой элемент для всех элементов конфигурации в файле конфигурации .NET.

Комментарии

WCF не добавляет элементы в разделы конфигурации других продуктов.

Службы WCF определяются в services разделе файла конфигурации. Сборка может содержать любое число служб. Для каждой службы используется собственный раздел конфигурации service. Этот раздел и его содержимое определяют контракт, поведение и конечные точки конкретной службы.

Обязательным является только атрибут name. По умолчанию имя службы описывает базовый тип CLR, который используется для реализации службы, однако можно изменить свойство ConfigurationName в классе ServiceContractAttribute, чтобы изменить требования к типу CLR.

Атрибут behaviorConfiguration является необязательным. Он указывает поведение, используемое службой. Поведение, которое определяется данным атрибутом, должно быть связано с поведением службы, которое определяется в области того же файла конфигурации (то есть в том же файле или в родительском файле).

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

Привязки связаны с конечными точками через сочетание атрибутов name и bindingConfiguration. Атрибут binding указывает, в каком разделе определяется привязка. Атрибут bindingConfiguration указывает, какая из настроенных привязок используется в разделе привязки. В разделе привязки может определяться несколько настроенных привязок.

Пример

Ниже приведен пример файла конфигурации WCF.

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.serviceModel>
    <behaviors>
      <!-- List of Behaviors -->
    </behaviors>
    <client>
      <!-- List of Endpoints -->
    </client>
    <diagnostics wmiProviderEnabled="false"
                 performanceCountersEnabled="false"
                 tracingEnabled="false">
    </diagnostics>
    <serviceHostingEnvironment>
      <!-- List of entries -->
    </serviceHostingEnvironment>
    <comContracts>
      <!-- List of COM+ Contracts -->
    </comContracts>
    <services>
      <!-- List of Services -->
    </services>
    <bindings>
      <!-- List of Bindings -->
    </bindings>
  </system.serviceModel>
</configuration>

См. также раздел