Vlastní hostování
Ukázka SelfHost ukazuje, jak implementovat službu v místním prostředí v konzolové aplikaci. Tato ukázka je založená na začínáme. Konfigurační soubor služby byl přejmenován z Web.config na App.config a upraven tak, aby nakonfiguroval základní adresu, kterou hostitel používá. Zdrojový kód služby byl upraven tak, aby implementoval statickou Main
funkci, která vytvoří a otevře hostitele služby, který poskytuje nakonfigurovanou základní adresu. Implementace služby byla upravena tak, aby zapisovala výstup do konzoly pro každou operaci. Klient nebyl upraven, s výjimkou konfigurace správné adresy koncového bodu služby.
Poznámka:
Postup nastavení a pokyny k sestavení pro tuto ukázku najdete na konci tohoto tématu.
Ukázka implementuje statickou hlavní funkci k vytvoření ServiceHost pro daný CalculatorService
typ, jak je znázorněno v následujícím vzorovém kódu.
// Host the service within this EXE console application.
public static void Main()
{
// Create a ServiceHost for the CalculatorService type.
using (ServiceHost serviceHost =
new ServiceHost(typeof(CalculatorService)))
{
// Open the ServiceHost to create listeners
// and start listening for messages.
serviceHost.Open();
// The service can now be accessed.
Console.WriteLine("The service is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.WriteLine();
Console.ReadLine();
}
}
Pokud je služba hostovaná ve službě Internetová informační služba (IIS) nebo službě aktivace procesu systému Windows (WAS), základní adresa služby je poskytována hostitelským prostředím. V případě místního hostování musíte zadat základní adresu sami. To se provádí pomocí elementuadd
, podřízeného <prvku baseAddresses>, podřízeného <hostitele>, podřízené< služby>, jak je znázorněno v následující ukázkové konfiguraci.
<service
name="Microsoft.ServiceModel.Samples.CalculatorService"
behaviorConfiguration="CalculatorServiceBehavior">
<host>
<baseAddresses>
<add baseAddress="http://localhost:8000/ServiceModelSamples/service"/>
</baseAddresses>
</host>
...
</service>
Při spuštění ukázky se požadavky na operace a odpovědi zobrazí v oknech služby i konzoly klienta. Stisknutím klávesy ENTER v každém okně konzoly vypnete službu a klienta.
Nastavení, sestavení a spuštění ukázky
Ujistěte se, že jste pro ukázky windows Communication Foundation provedli jednorázovou instalační proceduru.
Pokud chcete sestavit edici C# nebo Visual Basic .NET řešení, postupujte podle pokynů v části Sestavení ukázek windows Communication Foundation.
Pokud chcete spustit ukázku v konfiguraci s jedním nebo více počítači, postupujte podle pokynů v části Spuštění ukázek windows Communication Foundation.