Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
En el ejemplo DiscoveryWithScopes se muestra cómo usar ámbitos para clasificar los puntos de conexión reconocibles, así como cómo usar DiscoveryClient para realizar una búsqueda asincrónica de puntos de conexión. En el servicio, en este ejemplo se muestra cómo personalizar la detección de cada punto de conexión agregando un comportamiento de detección de puntos de conexión y usándolo para agregar un ámbito al punto de conexión, así como controlar la detectabilidad del punto de conexión. En el cliente, el ejemplo explica cómo los clientes pueden crear un DiscoveryClient y ajustar finamente los parámetros de búsqueda para incluir ámbitos mediante la adición de ámbitos a FindCriteria. En este ejemplo también se muestra cómo los clientes pueden restringir las respuestas agregando un criterio de terminación.
Características de servicio
Este proyecto muestra dos puntos de conexión de servicio que se agregan a un ServiceHost. Cada punto de conexión tiene un EndpointDiscoveryBehavior asociado con él. Este comportamiento se usa para agregar ámbitos de URI para ambos puntos de conexión. Los ámbitos se utilizan para distinguir cada uno de estos extremos para que los clientes puedan ajustar la búsqueda. Para el segundo punto de conexión, la detectabilidad se puede deshabilitar configurando la propiedad de Enabled a false. Esto garantiza que los metadatos de detección asociados a este punto de conexión no se envíen como parte de ningún mensaje de detección.
Características de cliente
El método FindCalculatorServiceAddress() muestra cómo usar DiscoveryClient y pasar un FindCriteria con dos restricciones. Se agrega un ámbito a los criterios y la MaxResults propiedad se establece en 1. El ámbito limita los resultados solo a los servicios que publican el mismo ámbito. Al establecer MaxResults en 1, se limitan las respuestas que el DiscoveryClient espera a un punto de conexión, como máximo. La Find llamada es una operación sincrónica que bloquea el subproceso hasta que se alcanza un tiempo de espera o se encuentra un punto de conexión.
Para utilizar este ejemplo
En este ejemplo se usan puntos de conexión HTTP y para ejecutar este ejemplo, se deben agregar ACL de dirección URL adecuadas. Para obtener más información, consulte Configuración de HTTP y HTTPS. Al ejecutar el siguiente comando con privilegios elevados, debe agregar las ACL adecuadas. Es posible que desee sustituir el dominio y el nombre de usuario por los argumentos siguientes si el comando no funciona tal como está:
netsh http add urlacl url=http://+:8000/ user=%DOMAIN%\%UserName%Compile la solución.
Ejecute el ejecutable del servicio desde el directorio de compilación.
Ejecute el archivo ejecutable del cliente. Tenga en cuenta que el cliente puede localizar el servicio.