Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W przykładzie Domyślny pokazano użycie NetTcpBinding powiązania. Ten przykład jest oparty na Rozpoczęcie, które implementuje usługę kalkulatora. W tym przykładzie usługa jest hostowana samodzielnie. Zarówno klient, jak i usługa to aplikacje konsolowe.
Uwaga / Notatka
Procedura instalacji i instrukcje kompilacji dla tego przykładu znajdują się na końcu tego tematu.
Powiązanie jest określone w plikach konfiguracji klienta i usługi. Typ powiązania jest określony w atrybucie binding elementu punktu końcowego<>, jak pokazano w poniższej przykładowej konfiguracji.
<endpoint address=""
binding="netTcpBinding"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
W poprzednim przykładzie pokazano, jak skonfigurować punkt końcowy do używania netTcpBinding wiązania z ustawieniami domyślnymi. Jeśli chcesz skonfigurować netTcpBinding powiązanie i zmienić niektóre jego ustawienia, należy zdefiniować konfigurację powiązania. Punkt końcowy musi odwoływać się do konfiguracji wiązania według nazwy z atrybutem bindingConfiguration. W tym przykładzie konfiguracja powiązania ma nazwę Binding1 i jest zdefiniowana, jak pokazano w poniższej przykładowej konfiguracji.
<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>
Po uruchomieniu przykładu żądania operacji i odpowiedzi są wyświetlane w oknie konsoli klienta. Naciśnij ENTER w oknie klienta, aby zamknąć 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.
Aby skonfigurować, skompilować i uruchomić przykładowy program
Zainstaluj ASP.NET 4.0 przy użyciu następującego polecenia.
%windir%\Microsoft.NET\Framework\v4.0.XXXXX\aspnet_regiis.exe /i /enableUpewnij się, że wykonano procedurę instalacji One-Time dla przykładów programu Windows Communication Foundation.
Aby skompilować wersję rozwiązania w języku C# lub Visual Basic .NET, postępuj zgodnie z instrukcjami w Kompilowanie przykładów Windows Communication Foundation.
Aby uruchomić przykład w konfiguracji pojedynczej lub między maszynami, postępuj zgodnie z instrukcjami w Uruchamianie przykładów programu Windows Communication Foundation.
Uwaga / Notatka
Ponieważ serwer jest hostowany samodzielnie, należy określić tożsamość w pliku App.config klienta, aby uruchomić przykład w konfiguracji między maszynami.
<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>