Spolehlivá relace WS
Ukázka wsReliableSession ukazuje použití spolehlivých relací. Spolehlivé relace poskytují podporu spolehlivého zasílání zpráv a 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 určuje záruky doručení v objednávce.
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žba (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 bindingConfiguration
atribut, který odkazuje na konfiguraci vazby s názvem "Binding1". Konfigurace vazby umožňuje spolehlivé relace nastavením enabled
atributu <reliableSession> na true
. Záruky doručení pro seřazené relace jsou řízeny nastavením objednaného atributu 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.
Nastavení, sestavení a spuštění ukázky
Pomocí následujícího příkazu nainstalujte ASP.NET 4.0.
%windir%\Microsoft.NET\Framework\v4.0.XXXXX\aspnet_regiis.exe /i /enable
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.