Default NetTcpBinding
Sampel default menunjukkan penggunaan pengikatan NetTcpBinding. Sampel ini didasarkan pada Memulai yang mengimplementasikan layanan kalkulator. Dalam sampel ini, layanan ini di-host sendiri. Baik klien maupun layanan adalah aplikasi konsol.
Catatan
Prosedur penyiapan dan petunjuk pembuatan untuk sampel ini terdapat di akhir topik ini.
Pengikatan ditentukan dalam file konfigurasi untuk klien dan layanan. Jenis pengikatan ditentukan dalam atribut binding
dari elemen <titik akhir> yang ditunjukkan dalam konfigurasi sampel berikut.
<endpoint address=""
binding="netTcpBinding"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
Sampel sebelumnya menunjukkan cara mengonfigurasi titik akhir untuk menggunakan pengikatan netTcpBinding
dengan pengaturan default. Jika Anda ingin mengonfigurasi pengikatan netTcpBinding
dan mengubah beberapa pengaturannya, maka perlu untuk menentukan konfigurasi pengikatan. Titik akhir harus mereferensikan konfigurasi pengikatan berdasarkan nama dengan atribut bindingConfiguration
. Dalam sampel ini, konfigurasi pengikatan diberi nama Binding1
dan didefinisikan seperti yang ditunjukkan dalam konfigurasi sampel berikut.
<services>
<service name="Microsoft.ServiceModel.Samples.CalculatorService"
behaviorConfiguration="CalculatorServiceBehavior">
...
<endpoint address=""
binding="netTcpBinding"
bindingConfiguration="Binding1"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
...
</service>
</services>
<bindings>
<netTcpBinding>
<binding name="Binding1"
closeTimeout="00:01:00"
openTimeout="00:01:00"
receiveTimeout="00:10:00"
sendTimeout="00:01:00"
transactionFlow="false"
transferMode="Buffered"
transactionProtocol="OleTransactions"
hostNameComparisonMode="StrongWildcard"
listenBacklog="10"
maxBufferPoolSize="524288"
maxBufferSize="65536"
maxConnections="10"
maxReceivedMessageSize="65536">
<readerQuotas maxDepth="32"
maxStringContentLength="8192"
maxArrayLength="16384"
maxBytesPerRead="4096"
maxNameTableCharCount="16384" />
<reliableSession ordered="true"
inactivityTimeout="00:10:00"
enabled="false" />
<security mode="Transport">
<transport clientCredentialType="Windows" protectionLevel="EncryptAndSign" />
</security>
</binding>
</netTcpBinding>
</bindings>
Saat Anda menjalankan sampel, permintaan dan respons operasi ditampilkan di jendela konsol klien. Tekan ENTER di jendela klien untuk mematikan komputer klien.
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.
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.
Catatan
Karena server di-host sendiri, Anda harus menentukan identitas dalam file App.config klien untuk menjalankan sampel dalam konfigurasi lintas komputer.
<client> <endpoint name="" address="net.tcp://servername:9000/servicemodelsamples/service" binding="netTcpBinding" contract="Microsoft.ServiceModel.Samples.ICalculator"> <identity> <userPrincipalName value = "user_name@service_domain"/> </identity> </endpoint> </client>