Sdílet prostřednictvím


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

  1. Ujistěte se, že jste pro ukázky windows Communication Foundation provedli jednorázovou instalační proceduru.

  2. Pokud chcete sestavit edici C# nebo Visual Basic .NET řešení, postupujte podle pokynů v části Sestavení ukázek windows Communication Foundation.

  3. 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.

Viz také