Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El ejemplo NamedPipe muestra el enlace netNamedPipeBinding, que proporciona la comunicación entre procesos de la misma máquina. Las canalizaciones con nombre no funcionan entre equipos. Este ejemplo se basa en el servicio de calculadora Comenzar.
En este ejemplo, el servicio se hospeda automáticamente. Tanto el cliente como el servicio son aplicaciones de consola.
Nota:
El procedimiento de instalación y las instrucciones de compilación de este ejemplo se encuentran al final de este tema.
El enlace se especifica en los archivos de configuración para el cliente y el servicio. El tipo de enlace se especifica en el atributo binding del <punto de conexión> o <punto de conexión> del elemento <client>, como se muestra en el siguiente ejemplo de configuración:
<endpoint address="net.pipe://localhost/ServiceModelSamples/service"
binding="netNamedPipeBinding"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
En el ejemplo anterior se muestra cómo configurar un extremo para usar la vinculación netNamedPipeBinding con la configuración predeterminada. Si desea configurar el netNamedPipeBinding enlace y cambiar algunas de sus opciones, debe definir una configuración de enlace. El punto de conexión debe hacer referencia a la configuración de enlace por nombre con un atributo bindingConfiguration.
<endpoint address="net.pipe://localhost/ServiceModelSamples/service"
binding="netNamedPipeBinding"
bindingConfiguration="Binding1"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
En este ejemplo, la configuración de enlace se denomina Binding1 y tiene la siguiente definición:
<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>
Al ejecutar el ejemplo, las solicitudes de operación y las respuestas se muestran en la ventana de la consola del cliente. Presione ENTRAR en la ventana del cliente para apagar el cliente.
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.
Para configurar, compilar y ejecutar el ejemplo
Asegúrese de que ha realizado el procedimiento de instalación única para los ejemplos de Windows Communication Foundation.
Para compilar el código C# o Visual Basic .NET Edition de la solución, siga las instrucciones de Building the Windows Communication Foundation Samples.
Para ejecutar el ejemplo en una sola configuración de máquina, siga las instrucciones de Ejecución de los ejemplos de Windows Communication Foundation.