Dela via


NetNamedPipeBinding

Exemplet NamedPipe visar bindningen netNamedPipeBinding , som tillhandahåller kommunikation mellan processer på samma dator. Namngivna rör fungerar inte mellan datorer. Det här exemplet baseras på kalkylatortjänsten Komma igång .

I det här exemplet är tjänsten lokalt installerad. Både klienten och tjänsten är konsolprogram.

Kommentar

Installationsproceduren och bygginstruktionerna för det här exemplet finns i slutet av det här avsnittet.

Bindningen anges i konfigurationsfilerna för klienten och tjänsten. Bindningstypen anges i binding attributet <för slutpunkten> eller <slutpunkten <> för klientelementet>, enligt följande exempelkonfiguration:

<endpoint address="net.pipe://localhost/ServiceModelSamples/service"
          binding="netNamedPipeBinding"
          contract="Microsoft.ServiceModel.Samples.ICalculator" />

Föregående exempel visar hur du konfigurerar en slutpunkt för att använda bindningen netNamedPipeBinding med standardinställningarna. Om du vill konfigurera bindningen netNamedPipeBinding och ändra vissa av dess inställningar måste du definiera en bindningskonfiguration. Slutpunkten måste referera till bindningskonfigurationen efter namn med ett bindingConfiguration attribut.

<endpoint address="net.pipe://localhost/ServiceModelSamples/service"
          binding="netNamedPipeBinding"
          bindingConfiguration="Binding1"
          contract="Microsoft.ServiceModel.Samples.ICalculator" />

I det här exemplet namnges Binding1 bindningskonfigurationen och har följande definition:

<bindings>
  <!--
        Following is the expanded configuration section for a NetNamedPipeBinding.
        Each property is configured with the default value.
     -->
  <netNamedPipeBinding>
    <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"
             maxBufferPoolSize="524288"
             maxBufferSize="65536"
             maxConnections="10"
             maxReceivedMessageSize="65536">
      <security mode="Transport">
        <transport protectionLevel="EncryptAndSign" />
      </security>
    </binding>
  </netNamedPipeBinding>
</bindings>

När du kör exemplet visas åtgärdsbegäranden och svar i klientkonsolfönstret. Tryck på RETUR i klientfönstret för att stänga av klienten.

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.

Så här konfigurerar du, skapar och kör exemplet

  1. Kontrollera att du har utfört engångsinstallationsproceduren för Windows Communication Foundation-exempel.

  2. Om du vill skapa C# eller Visual Basic .NET-versionen av lösningen följer du anvisningarna i Skapa Windows Communication Foundation-exempel.

  3. Om du vill köra exemplet i en enskild datorkonfiguration följer du anvisningarna i Köra Windows Communication Foundation-exempel.