Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
L'esempio NamedPipe illustra l'associazionenetNamedPipeBinding, che fornisce la comunicazione tra processi nello stesso computer. I pipe nominati non funzionano tra diversi computer. Questo esempio si basa sul servizio di calcolatore Getting Started.
In questo esempio, il servizio è ospitato autonomamente. Sia il client che il servizio sono applicazioni console.
Annotazioni
La procedura di installazione e le istruzioni di compilazione per questo esempio si trovano alla fine di questo argomento.
L'associazione viene specificata nei file di configurazione per il client e il servizio. Il tipo di associazione è specificato nell'attributo dell'elemento binding o <, come illustrato nella configurazione di esempio seguente:
<endpoint address="net.pipe://localhost/ServiceModelSamples/service"
binding="netNamedPipeBinding"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
L'esempio precedente illustra come configurare un endpoint per l'uso dell'associazione netNamedPipeBinding con le impostazioni predefinite. Se si vuole configurare l'associazione netNamedPipeBinding e modificarne alcune impostazioni, è necessario definire una configurazione di associazione. L'endpoint deve riferirsi alla configurazione del binding per nome utilizzando l'attributo bindingConfiguration.
<endpoint address="net.pipe://localhost/ServiceModelSamples/service"
binding="netNamedPipeBinding"
bindingConfiguration="Binding1"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
In questo esempio la configurazione dell'associazione è denominata Binding1 e ha la definizione seguente:
<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>
Quando si esegue l'esempio, le richieste e le risposte dell'operazione vengono visualizzate nella finestra della console client. Premere INVIO nella finestra del client per chiudere il client.
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.
Per configurare, compilare ed eseguire l'esempio
Assicurati di aver eseguito la procedura di installazione di One-Time per gli esempi di Windows Communication Foundation.
Per compilare l'edizione C# o Visual Basic .NET della soluzione, seguire le istruzioni in Compilazione degli esempi di Windows Communication Foundation.
Per eseguire l'esempio in una singola configurazione del computer, seguire le istruzioni in Esecuzione degli esempi di Windows Communication Foundation.