Поделиться через


<<добавление> serviceActivations>

Элемент конфигурации, позволяющий определить параметры активации виртуальной службы, которые соответствуют типам служб Windows Communication Foundation (WCF). Это позволяет активировать службы, расположенные в WAS/IIS, без SVC-файла.

<Конфигурации>
  <system.serviceModel>
    <serviceHostingEnvironment>
      <serviceActivations>
        <Добавить>

Синтаксис

<serviceHostingEnvironment>
    <serviceActivations>
      <add factory="String"
           service="String" />
  </serviceActivations>
</serviceHostingEnvironment>

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

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

Атрибуты

Атрибут Описание
фабрика Строка, задающая имя типа CLR фабрики, которая формирует элемент активации службы.
служба ServiceType, реализующий службу (либо полное, либо короткое имя типа) (когда оно размещено в папке App_Code).
relativeAddress Относительный адрес в текущем приложении IIS (например, «Service.svc»). В WCF 4.0 этот относительный адрес должен содержать одно из известных расширений файлов (.svc, .xamlx, ...). Для relativeUrl не должен существовать физический файл.

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

Отсутствует.

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

Элемент Описание
<serviceHostingEnvironment> Раздел конфигурации, в котором описываются параметры активации.

Комментарии

В следующем примере показано, как настроить параметры активации в файле web.config.

<configuration>
  <system.serviceModel>
    <serviceHostingEnvironment>
      <serviceActivations>
        <add service="GreetingService" />
      </serviceActivations>
    </serviceHostingEnvironment>
  </system.serviceModel>
</configuration>

Использование этой конфигурации позволяет активировать GreetingService без SVC-файла.

Следует отметить, что <serviceHostingEnvironment> является конфигурацией на уровне приложения. Необходимо разместить файл web.config, содержащий конфигурацию в корневом каталоге виртуального приложения. Кроме того, serviceHostingEnvironment является наследуемым разделом machineToApplication. Если зарегистрировать одну службу в корневом каталоге компьютера, каждая служба в приложении унаследует эту службу.

Активация на основе конфигурации поддерживает активацию как по протоколу HTTP, так и по протоколу, отличному от HTTP. Для этого требуются расширения в relativeAddress, т. е. SVC, XOML или XAMLX. Можно сопоставить пользовательские расширения с известными поставщиками buildProvider, что впоследствии позволит активировать службу через любое расширение. При возникновении конфликта раздел <serviceActivations> переопределяет записи в SVC-файле.

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