<endpointDiscovery>
Especifica as várias configurações de descoberta de um ponto de extremidade como a detectabilidade, os escopos e as extensões personalizadas para os metadados.
<configuration>
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior>
<endpointDiscovery>
Syntax
<behaviors>
<endpointBehaviors>
<behavior name="String">
<endpointDiscovery enabled="Boolean">
<scopes>
<add scope="URI"/>
</scopes>
<extensions />
</endpointDiscovery>
</behavior>
</endpointBehaviors>
</behaviors>
Atributos e elementos
As seções a seguir descrevem atributos, elementos filho e elementos pai.
Atributos
Atributo | Descrição |
---|---|
Habilitado | Um valor booliano que especifica se a capacidade de descoberta está habilitada neste ponto de extremidade. O padrão é false . |
Elementos filho
Elemento | Descrição |
---|---|
<escopos> | Uma coleção de URIs de escopo para o ponto de extremidade. Mais de um URIs de escopo pode ser associado a um único ponto de extremidade. |
<extensões> [de <endpointDiscovery>] | Uma coleção de elementos XML que permite especificar metadados personalizados a serem publicados para um ponto de extremidade. |
<types> | Uma coleção de interfaces a serem pesquisada. |
Elementos pai
Elemento | Descrição |
---|---|
<behavior> | Especifica um elemento de comportamento. |
Comentários
Quando adicionado à configuração de comportamento do ponto de extremidade e com o atributo enabled
definido como true
, esse elemento de configuração habilita sua capacidade de descoberta. Além disso, você pode usar o <elemento filho de escopos>para especificar uris de escopo personalizado que podem ser usados para filtrar pontos de extremidade de serviço durante a consulta, bem como o <elemento filho de extensões> para especificar metadados personalizados que devem ser publicados junto com os metadados detectáveis padrão (EPR, ContractTypeName, BindingName, Scope e ListenURI).
Esse elemento de configuração depende do elemento <serviceDiscovery> que fornece o controle de nível de serviço da descoberta. Isso significa que as configurações desse elemento serão ignoradas se <serviceDiscovery> não estiver presente na configuração.
Exemplo
O exemplo de configuração a seguir especifica escopos de filtragem e metadados de extensão a serem publicados para um ponto de extremidade.
<services>
<service name="CalculatorService"
behaviorConfiguration="CalculatorServiceBehavior">
<endpoint binding="basicHttpBinding"
address="calculator"
contract="ICalculatorService"
behaviorConfiguration="calculatorEndpointBehavior" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="CalculatorServiceBehavior">
<serviceDiscovery />
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="calculatorEndpointBehavior">
<endpointDiscovery enabled="true">
<scopes>
<add scope="http://contoso/test1" />
<add scope="http://contoso/test2" />
</scopes>
<extensions>
<e:Publisher xmlns:e="http://example.org">
<e:Name>The Example Organization</e:Name>
<e:Address>One Example Way, ExampleTown, EX 12345</e:Address>
<e:Contact>support@example.org</e:Contact>
</e:Publisher>
<AnotherCustomMetadata>Custom Metadata</AnotherCustomMetadata>
</extensions>
</endpointDiscovery>
</behavior>
</endpointBehaviors>
</behaviors>