Aktivace založená na konfiguraci v IIS a WAS
Při hostování služby Windows Communication Foundation (WCF) v rámci služby Internetová informační služba (IIS) nebo Windows Process Activation Service (WAS) je nutné zadat soubor .svc. Soubor .svc obsahuje název služby a volitelnou vlastní objekt pro hostování služeb. Tento další soubor přidává režijní náklady na spravovatelnost. Funkce aktivace na základě konfigurace odebere požadavek na soubor .svc, a proto související režijní náklady.
Aktivace podle konfigurace
Aktivace na základě konfigurace přebírá metadata, která se použila k umístění do souboru .svc, a umístí je do souboru Web.config. Uvnitř elementu<serviceHostingEnvironment>
<serviceActivations>
je prvek. Uvnitř elementu <serviceActivations>
jsou jeden nebo více <add>
prvků, jeden pro každou hostované služby. Element <add>
obsahuje atributy, které umožňují nastavit relativní adresu pro službu a typ služby nebo objekt pro hostování služby. Následující ukázkový kód konfigurace ukazuje, jak se tato část používá.
Poznámka:
Každý <add>
prvek musí určovat službu nebo atribut továrny. Zadání atributů služby i továrny je povoleno.
<serviceHostingEnvironment>
<serviceActivations>
<add relativeAddress="MyServiceAddress" service="Service" factory="MyServiceHostFactory"/>
</serviceActivations>
</serviceHostingEnvironment>
V tomto souboru Web.config můžete zdrojový kód služby umístit do App_Code adresáře aplikace nebo do vyhovujícího sestavení v adresáři Bin aplikace.
Poznámka:
- Při použití aktivace na základě konfigurace se vložený kód v souborech .svc nepodporuje.
- Atribut
relativeAddress
musí být nastavený na relativní adresu, například< sub-directory>/service.svc nebo ~/<sub-directory/service.svc. - Výjimka konfigurace se vyvolá, pokud zaregistrujete relativní adresu, která nemá známé rozšíření přidružené k WCF.
- Zadaná relativní adresa je relativní vzhledem ke kořenovému adresáři virtuální aplikace.
- Vzhledem k hierarchickému modelu konfigurace se registrované relativní adresy na úrovni počítače a lokality dědí virtuálními aplikacemi.
- Registrace v konfiguračním souboru mají přednost před nastavením v souboru .svc, .xamlx, .xoml nebo jiném souboru.
- Všechny "\" (zpětné lomítka) v identifikátoru URI odeslaném do služby IIS/WAS se automaticky převedou na /(lomítko). Pokud je přidána relativní adresa, která obsahuje "\" a odešlete iis identifikátor URI, který používá relativní adresu, zpětné lomítko se převede na lomítko a služba IIS ji nemůže shodovat s relativní adresou. Služba IIS odesílá informace o trasování, které indikují, že se nenašly žádné shody.