NamedPipe サンプルは、同じコンピューター上でクロスプロセス通信を提供するnetNamedPipeBinding
バインディングを示しています。 名前付きパイプは、マシン間では機能しません。 このサンプルは、 入門 電卓サービスに基づいています。
このサンプルでは、サービスはセルフホステッドです。 クライアントとサービスの両方がコンソール アプリケーションです。
注
このサンプルのセットアップ手順とビルド手順は、このトピックの最後にあります。
バインディングは、クライアントとサービスの構成ファイルで指定されます。 バインドの種類は、次のサンプル構成に示すように、<client> 要素の <endpoint> または <endpoint> のbinding
属性で指定します。
<endpoint address="net.pipe://localhost/ServiceModelSamples/service"
binding="netNamedPipeBinding"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
前のサンプルでは、既定の設定で netNamedPipeBinding
バインドを使用するようにエンドポイントを構成する方法を示します。
netNamedPipeBinding
バインドを構成し、その設定の一部を変更する場合は、バインド構成を定義する必要があります。 エンドポイントは、 bindingConfiguration
属性を持つ名前でバインド構成を参照する必要があります。
<endpoint address="net.pipe://localhost/ServiceModelSamples/service"
binding="netNamedPipeBinding"
bindingConfiguration="Binding1"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
このサンプルでは、バインド構成の名前は Binding1
で、次の定義があります。
<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>
サンプルを実行すると、操作要求と応答がクライアント コンソール ウィンドウに表示されます。 クライアント ウィンドウで Enter キーを押して、クライアントをシャットダウンします。
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.
サンプルを設定、ビルド、実行するには
Windows Communication Foundation サンプル のOne-Time セットアップ手順を実行していることを確認します。
ソリューションの C# または Visual Basic .NET エディションをビルドするには、「Windows Communication Foundation サンプルのビルド」の手順に従います。
1 台のコンピューター構成でサンプルを実行するには、「 Windows Communication Foundation サンプルの実行」の手順に従います。