Víc kontraktů
Ukázka MultipleContracts ukazuje, jak implementovat více kontraktů ve službě a jak nakonfigurovat koncové body pro komunikaci s jednotlivými implementovanými kontrakty. Tato ukázka je založená na začínáme. Služba byla změněna tak, aby definovala dva kontrakty, ICalculator
kontrakt a ICalculatorSession
kontrakt.
Poznámka:
Postup nastavení a pokyny k sestavení pro tuto ukázku najdete na konci tohoto tématu.
Třída služby implementuje jak kontrakty ICalculator
ICalculatorSession
, tak i kontrakty. Vzhledem k tomu, že jedna z kontraktů vyžaduje relaci, služba používá PerSession režim instance k udržování stavu v průběhu životnosti relace.
Konfigurace služby byla upravena tak, aby definovala dva koncové body, aby se zpřístupnily jednotlivé kontrakty. Koncový ICalculator
bod je vystaven na základní adrese pomocí basicHttpBinding
. Koncový ICalculatorSession
bod se zobrazí v baseaddress/relaci pomocí wsHttpBinding
atributu nastaveného bindingConfiguration
na BindingWithSession
, jak je znázorněno v následující ukázkové konfiguraci.
<service
name="Microsoft.ServiceModel.Samples.CalculatorService"
behaviorConfiguration="CalculatorServiceBehavior">
<!-- ICalculator endpoint is exposed using BasicBinding at the base
address provided by host:
http://localhost/servicemodelsamples/service.svc -->
<endpoint address=""
binding="basicHttpBinding"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
<!-- ICalculatorSession endpoint is exposed using BindingWithSession
at {baseaddress}/session:
http://localhost/servicemodelsamples/service.svc/session -->
<endpoint address="session"
binding="wsHttpBinding"
bindingConfiguration="BindingWithSession"
contract="Microsoft.ServiceModel.Samples.ICalculatorSession" />
...
</service>
Vygenerovaný kód klienta teď obsahuje třídu klienta pro původní ICalculator
kontrakt i nový ICalculatorSession
kontrakt. Konfigurace klienta a kód byly upraveny tak, aby komunikovaly s každým kontraktem v příslušném koncovém bodu služby.
Klient je konzolová aplikace systému Windows (.exe). Službu hostuje Internetová informační služba (IIS).
V okně konzoly klienta se zobrazí operace odeslané do každého koncového bodu, první základní koncový bod následovaný zabezpečeným koncovým bodem.
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.