Udostępnij za pośrednictwem


Aktywacja oparta na konfiguracji w usługach IIS i WAS

Zwykle w przypadku hostowania usługi Windows Communication Foundation (WCF) w usługach Internet Information Services (IIS) lub Windows Process Activation Service (WAS) należy podać plik svc. Plik svc zawiera nazwę usługi i opcjonalną niestandardową fabrykę hostów usług. Ten dodatkowy plik zwiększa obciążenie związane z zarządzaniem. Funkcja aktywacji oparta na konfiguracji usuwa wymaganie, aby mieć plik svc i w związku z tym skojarzone obciążenie.

Aktywacja oparta na konfiguracji

Aktywacja oparta na konfiguracji pobiera metadane, które były umieszczane w pliku svc i umieszcza je w pliku Web.config. W elemecie<serviceHostingEnvironment> znajduje się <serviceActivations> element . W elemecie <serviceActivations> znajduje się co najmniej jeden <add> element dla każdej hostowanej usługi. Element <add> zawiera atrybuty, które umożliwiają ustawienie względnego adresu dla usługi oraz typu usługi lub fabryki hostów usług. Poniższy przykładowy kod konfiguracji przedstawia sposób użycia tej sekcji.

Uwaga

Każdy <add> element musi określać usługę lub atrybut fabryki. Określanie atrybutów usługi i fabryki jest dozwolone.

<serviceHostingEnvironment>
  <serviceActivations>
    <add relativeAddress="MyServiceAddress" service="Service" factory="MyServiceHostFactory"/>
  </serviceActivations>
</serviceHostingEnvironment>

Dzięki temu w pliku Web.config można umieścić kod źródłowy usługi w katalogu App_Code aplikacji lub zgodnym zestawie w katalogu Bin aplikacji.

Uwaga

  • W przypadku korzystania z aktywacji opartej na konfiguracji kod wbudowany w plikach svc nie jest obsługiwany.
  • Atrybut relativeAddress musi być ustawiony na adres względny, taki jak "<sub-directory>/service.svc" lub "~/<sub-directory/service.svc".
  • Wyjątek konfiguracji jest zgłaszany, jeśli zarejestrujesz adres względny, który nie ma znanego rozszerzenia skojarzonego z usługą WCF.
  • Określony adres względny jest względny względem katalogu głównego aplikacji wirtualnej.
  • Ze względu na hierarchiczny model konfiguracji zarejestrowane adresy względne na poziomie maszyny i lokacji są dziedziczone przez aplikacje wirtualne.
  • Rejestracje w pliku konfiguracji mają pierwszeństwo przed ustawieniami w pliku .svc, .xamlx, .xoml lub innym pliku.
  • Każdy znak "\" (ukośniki odwrotne) w identyfikatorze URI wysłanym do usług IIS/WAS jest automatycznie konwertowany na znak "/" (ukośnik do przodu). Jeśli dodano adres względny zawierający znak "\" i wysyłasz usługom IIS identyfikator URI używający adresu względnego, ukośnik odwrotny jest konwertowany na ukośnik do przodu, a usługi IIS nie mogą dopasować go do adresu względnego. Usługi IIS wysyłają informacje śledzenia wskazujące, że nie znaleziono dopasowań.

Zobacz też