Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A DualHttp példa bemutatja, hogyan konfigurálhatja a WSDualHttpBinding kötést. Ez a minta egy ügyfélkonzolprogramból (.exe) és az Internet Information Services (IIS) által üzemeltetett szolgáltatáskódtárból (.dll) áll. A szolgáltatás kétoldalas szerződést valósít meg. A szerződést az ICalculatorDuplex interfész határozza meg, amely matematikai műveleteket tesz elérhetővé (Hozzáadás, Kivonás, Szorzás és Osztás). Ebben a mintában az ICalculatorDuplex interfész lehetővé teszi az ügyfél számára a matematikai műveletek végrehajtását, és kiszámítja a munkameneten futó eredményt. A szolgáltatás egymástól függetlenül eredményeket ad vissza a ICalculatorDuplexCallback felületen. A kétoldalas szerződések munkamenetet igényelnek, mert létre kell hozni egy környezetet az ügyfél és a szolgáltatás között küldött üzenetek halmazának korrelációja érdekében. A kötés támogatja a WSDualHttpBinding kétoldalas kommunikációt.
Megjegyzés:
A minta telepítési eljárása és összeállítási utasításai a témakör végén találhatók.
Szolgáltatásvégpont WSDualHttpBindingkonfigurálásához adja meg a kötést a végpontkonfigurációban az ábrán látható módon.
<endpoint address=""
binding="wsDualHttpBinding"
contract="Microsoft.ServiceModel.Samples.ICalculatorDuplex" />
Az ügyfélen konfigurálnia kell egy címet, amellyel a kiszolgáló csatlakozhat az ügyfélhez az alábbi mintakonfigurációban látható módon.
<system.serviceModel>
<client>
<endpoint address=
"http://localhost/servicemodelsamples/service.svc"
binding="wsDualHttpBinding"
bindingConfiguration="Binding1"
contract="Microsoft.ServiceModel.Samples.ICalculatorDuplex" />
</client>
<bindings>
<!-- Configure a WSDualHttpBinding that supports duplex -->
<!-- communication. -->
<wsDualHttpBinding>
<binding name="Binding1"
clientBaseAddress="http://localhost:8000/myClient/"
useDefaultWebProxy="true"
bypassProxyOnLocal="false">
</binding>
</wsDualHttpBinding>
</bindings>
</system.serviceModel>
A minta futtatásakor a műveleti kérelmek és a válaszok megjelennek az ügyfélkonzol ablakában. Nyomja le az ENTER billentyűt az ügyfélablakban az ügyfél leállításához.
Press <ENTER> to terminate client once the output is displayed.
Result(100)
Result(50)
Result(882.5)
Result(441.25)
Equation(0 + 100 - 50 * 17.65 / 2 = 441.25)
A minta futtatásakor az ügyfélnek visszaadott üzenetek megjelennek a szolgáltatásból küldött visszahívási felületen. Minden köztes eredmény megjelenik, amelyet az összes művelet befejezése után a teljes egyenlet követ. Nyomja le az ENTER billentyűt az ügyfél leállításához.
A példa beállítása, elkészítése és futtatása
Telepítse a ASP.NET 4.0-t az alábbi paranccsal.
%windir%\Microsoft.NET\Framework\v4.0.XXXXX\aspnet_regiis.exe /i /enableGyőződjön meg arról, hogy elvégezte a Windows Communication Foundation-minták One-Time beállítási eljárását.
A megoldás C# vagy Visual Basic .NET kiadásának létrehozásához kövesse Windows Communication Foundation-mintákcímű témakör utasításait.
Ha a mintát egy vagy több gép közötti konfigurációban szeretné futtatni, kövesse A Windows Communication Foundation-minták futtatásacímű témakör utasításait.
Fontos
Ha az ügyfelet gépközi konfigurációban futtatja, mindenképpen cserélje le a localhostot az
addressügyfélelem< végpontjának><> attribútumában és aclientBaseAddresswsDualHttpBinding< elem kötési elemének> attribútumában a megfelelő gép nevére, az ábrán látható módon:<><client> <endpoint name = "" address= "http://service_machine_name/servicemodelsamples/service.svc" /> </client> ... <wsDualHttpBinding> <binding name="DuplexBinding" clientBaseAddress= "http://client_machine_name:8000/myClient/"> </binding> </wsDualHttpBinding>