WS Dual Http
Sampel DualHttp menunjukkan cara mengonfigurasiWSDualHttpBinding
pengikatan data. Sampel ini terdiri dari program konsol klien (.exe) dan pustaka layanan (.dll) yang dihosting oleh Layanan Informasi Internet (IIS). Layanan ini menerapkan kontrak dupleks. Kontrak didefinisikan oleh antarmuka ICalculatorDuplex
, yang mengekspos operasi matematika (Tambahkan, Kurangi, Kalikan, dan Bagi). Dalam sampel ini, ICalculatorDuplex
antarmuka memungkinkan klien melakukan operasi matematika, menghitung hasil yang berjalan selama sesi. Secara independen, layanan dapat mengembalikan hasil pada ICalculatorDuplexCallback
antarmuka. Kontrak dupleks memerlukan sesi, karena konteks harus dibuat untuk menghubungkan kumpulan pesan yang sedang dikirim antara klien dan layanan. Pengikatan WSDualHttpBinding
mendukung komunikasi dupleks.
Catatan
Prosedur penyiapan dan petunjuk pembuatan untuk sampel ini terdapat di akhir topik ini.
Untuk mengonfigurasi titik akhir layanan dengan WSDualHttpBinding
, tentukan pengikatan dalam konfigurasi titik akhir seperti yang ditunjukkan.
<endpoint address=""
binding="wsDualHttpBinding"
contract="Microsoft.ServiceModel.Samples.ICalculatorDuplex" />
Pada klien, Anda harus mengonfigurasi alamat yang dapat digunakan server untuk terhubung ke klien seperti yang ditunjukkan dalam konfigurasi sampel berikut.
<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>
Saat Anda menjalankan sampel, permintaan dan respons operasi ditampilkan di jendela konsol klien. Tekan ENTER di jendela klien untuk mematikan komputer klien.
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)
Saat Menjalankan sampel, Anda akan melihat pesan yang dikembalikan ke klien pada antarmuka panggilan balik yang dikirim dari layanan. Setiap hasil perantara ditampilkan, diikuti oleh seluruh persamaan setelah penyelesaian semua operasi. Tekan ENTER untuk mematikan komputer klien.
Untuk menyiapkan, membangun, dan menjalankan sampel
Pasang ASP.NET 4.0 menggunakan perintah berikut.
%windir%\Microsoft.NET\Framework\v4.0.XXXXX\aspnet_regiis.exe /i /enable
Pastikan Anda telah melakukan Prosedur Penyiapan Satu Kali untuk Sampel Windows Communication Foundation.
Untuk membangun solusi edisi C# atau Visual Basic .NET, ikuti petunjuknya di Membangun Sampel WCF.
Untuk menjalankan sampel dalam konfigurasi satu atau lintas komputer, ikuti instruksi pada Menjalankan Sampel WCF.
Penting
Saat menjalankan klien dalam konfigurasi lintas mesin, pastikan untuk mengganti localhost di kedua
address
atribut dari <titik akhir> elemen < klien> danclientBaseAddress
atribut dari elemen <pengikatan> dari elemen <wsDualHttpBinding>dengan nama mesin yang sesuai, seperti yang ditunjukkan:<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>