Spolehlivá relace WS

Ukázka wsReliableSession ukazuje použití spolehlivých relací. Spolehlivé relace poskytují podporu pro spolehlivé zasílání zpráv a udržování relací. Spolehlivé zasílání zpráv opakuje komunikaci při selhání a umožňuje zadat záruky doručení, například doručení zpráv v pořadí. Relace udržují stav pro klienty mezi voláními. Ukázka implementuje relace pro zachování stavu klienta a specifikuje záruky doručení ve správném pořadí.

Tato ukázka vychází ze služby Začínáme , která implementuje službu kalkulačky. Funkce spolehlivé relace jsou povolené a nakonfigurované v konfiguračních souborech aplikace pro klienta a službu.

V této ukázce je služba hostovaná v Internetové informační službě (IIS) a klient je konzolová aplikace (.exe).

Poznámka:

Postup nastavení a pokyny k sestavení pro tuto ukázku najdete na konci tohoto tématu.

Ukázka používá wsHttpBinding. Vazba je určena v konfiguračních souborech klienta i služby. Typ vazby je zadán v atributu elementu koncového binding bodu, jak je znázorněno v následující ukázkové konfiguraci.

<endpoint address=""
          binding="wsHttpBinding"
          bindingConfiguration="Binding1"
          contract="Microsoft.ServiceModel.Samples.ICalculator" />

Koncový bod obsahuje atribut bindingConfiguration, který odkazuje na konfiguraci vazby pojmenovanou "Binding1." Tato konfigurace umožňuje spolehlivé relace nastavením atributu enabled elementu <reliableSession> na true. Záruky doručení pro objednané relace jsou řízeny nastavením atributu objednávky na true nebo false. Výchozí hodnota je true.

<bindings>
    <wsHttpBinding>
        <binding name="Binding1">
            <reliableSession enabled="true" />
        </binding>
    </wsHttpBinding>
</bindings>

Třída implementace služby implementuje PerSession instancing pro údržbu samostatné instance třídy pro každého klienta, jak je znázorněno v následujícím vzorovém kódu.

[ServiceBehavior(InstanceContextMode=InstanceContextMode.PerSession)] public class CalculatorService : ICalculator
{
    ...
}

Při spuštění ukázky se požadavky na operace a odpovědi zobrazí v okně konzoly klienta. Stisknutím klávesy ENTER v okně klienta klienta ukončete klienta.

Add(100,15.99) = 115.99
Subtract(145,76.54) = 68.46
Multiply(9,81.25) = 731.25
Divide(22,7) = 3.14285714285714

Press <ENTER> to terminate client.

Jak nastavit, sestavit a spustit ukázku

  1. Pomocí následujícího příkazu nainstalujte ASP.NET 4.0.

    %windir%\Microsoft.NET\Framework\v4.0.XXXXX\aspnet_regiis.exe /i /enable
    
  2. Ujistěte se, že jste provedli instalační proceduru One-Time pro ukázky Windows Communication Foundation.

  3. Pokud chcete sestavit verzi C# nebo Visual Basic .NET řešení, postupujte podle pokynů v Sestavení ukázek Windows Communication Foundation.

  4. Pokud chcete spustit ukázku v konfiguraci pro jeden počítač nebo pro více počítačů, postupujte podle pokynů v Spuštění ukázek Windows Communication Foundation.