Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
[ПСП] Учебник WCF.docx
Скачиваний:
48
Добавлен:
26.03.2016
Размер:
147.76 Кб
Скачать

Основные разделы файла конфигурации

Основные разделы файла конфигурации включают в себя следующие элементы.

Копировать

<system.ServiceModel>

<services>

<!—- Define the service endpoints. This section is optional in the new

default configuration model in .NET Framework 4. -->

<service>

<endpoint/>

</service>

</services>

<bindings>

<!-- Specify one or more of the system-provided binding elements,

for example, <basicHttpBinding> -->

<!-- Alternatively, <customBinding> elements. -->

<binding>

<!-- For example, a <BasicHttpBinding> element. -->

</binding>

</bindings>

<behaviors>

<!-- One or more of the system-provided or custom behavior elements. -->

<behavior>

<!-- For example, a <throttling> element. -->

</behavior>

</behaviors>

</system.ServiceModel>

Примечание

Разделы привязок и поведения являются необязательными и указываются только при необходимости.

Элемент <services>

Элемент services содержит спецификации для всех служб, которые размещает приложение.Начиная с упрощенной модели настройки в .NET Framework 4, этот раздел задавать необязательно.

<services>

Элемент <service>

Каждая служба имеет следующие атрибуты:

  • name .Определяет тип, обеспечивающий реализацию контракта службы.Это полное имя, состоящее из пространства имен, точки и имени типа,например "MyNameSpace.myServiceType".

  • behaviorConfiguration .Задает имя одного из элементов behavior, найденных в behaviors.Заданное поведение управляет действиями, например, разрешает ли служба олицетворение.Если значением является пустое имя, или объект behaviorConfiguration не указан, то в службу добавляется набор поведений службы по умолчанию.

  • <service>

Элемент <endpoint>

Для каждой конечной точки требуется адрес, привязка и контракт, представленные следующими атрибутами:

  • address .Задает универсальный код ресурса (URI) службы, который может быть абсолютным адресом или адресом, указанным относительно базового адреса службы.Если задана пустая строка, это означает, что конечная точка доступна по базовому адресу, который указывается при создании ServiceHostдля службы.

  • binding .Как правило, задает предоставляемую системой привязку типа WsHttpBinding, но также может задавать определяемую пользователем привязку.Заданная привязка определяет используемый тип транспорта, безопасности и кодирования, а также поддерживаются ли или включены ли надежные сеансы, транзакции или потоковая передача.

  • bindingConfiguration .Если требуется изменить значения привязки по умолчанию, можно настроить соответствующий элемент binding в элементе bindings.Этому атрибуту должно быть присвоено то же значение, что и атрибуту name элемента binding, который используется для изменения значений по умолчанию.Если имя не задано, или в привязке не задан объект bindingConfiguration, то в конечной точке используется привязка по умолчанию типа привязки.

  • contract .Задает интерфейс, определяющий контракт.Это интерфейс, реализованный в типе CLR, который задан атрибутом name элемента service.

  • <endpoint> element reference

Элемент <bindings>

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

<bindings>

Элемент <binding>

Элементы binding, содержащиеся в элементе bindings, могут являться либо одной из предоставленных системой привязок (см. в разделе Привязки, предоставляемые системой), либо пользовательской привязкой (см. в разделеПользовательские привязки).Элемент binding имеет атрибут name, сопоставляющий привязку с конечной точкой, заданной в атрибуте bindingConfiguration элемента endpoint.Если имя не указано, то привязка будет соответствовать значению по умолчанию для этого типа привязки.

Дополнительные сведения о настройке служб и клиентов см. в разделе Configuring Windows Communication Foundation Applications.

<binding>

Элемент <behaviors>

Это элемент контейнера для элементов behavior, задающих поведение службы.

<behaviors>

Элемент <behavior>

Каждый элемент behavior определяется атрибутом name и содержит либо предоставляемое системой поведение (например, <throttling>), либо пользовательское поведение.Если имя не задано, то элемент behavior будет соответствовать поведению по умолчанию для службы или конечной точки.

<behavior> для <serviceBehaviors>