Бөлісу құралы:


NetNamedPipeBinding

В примере NamedPipe показана netNamedPipeBinding привязка, которая обеспечивает межпроцессное взаимодействие на одном компьютере. Использование именованных каналов для обмена данными между компьютерами не поддерживается. Этот пример основан на службе калькулятора "Начало работы ".

В этом образце служба является резидентной. И клиент, и служба являются консольными приложениями.

Примечание.

Процедура настройки и инструкции по построению для данного образца приведены в конце этого раздела.

Привязка задается в файлах конфигурации для клиента и службы. Тип привязки указывается в 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>

При выполнении примера запросы и ответы операций отображаются в окне консоли клиента. Чтобы закрыть клиент, нажмите клавишу ВВОД в окне клиента.

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.

Настройка, сборка и выполнение образца

  1. Убедитесь, что вы выполнили процедуру однократной установки для примеров Windows Communication Foundation.

  2. Чтобы создать выпуск решения на языке C# или Visual Basic .NET, следуйте инструкциям в разделе Building the Windows Communication Foundation Samples.

  3. Чтобы запустить пример в одной конфигурации компьютера, следуйте инструкциям в разделе "Запуск примеров Windows Communication Foundation".