Partilhar via


<endpointDiscovery>

Especifica as várias definições de deteção para um ponto final, como a sua deteção, âmbitos e quaisquer extensões personalizadas para os respetivos metadados.

<configuração>
  <system.serviceModel>
    <comportamentos>
      <endpointBehaviors>
        <comportamento>
          <endpointDiscovery>

Syntax

<behaviors>
  <endpointBehaviors>
    <behavior name="String">
      <endpointDiscovery enabled="Boolean">
        <scopes>
          <add scope="URI"/>
        </scopes>
        <extensions />
      </endpointDiscovery>
    </behavior>
  </endpointBehaviors>
</behaviors>

Atributos e Elementos

As secções seguintes descrevem atributos, elementos subordinados e elementos principais.

Atributos

Atributo Descrição
ativado Um valor booleano que especifica se a deteção está ativada neste ponto final. A predefinição é false.

Elementos Subordinados

Elemento Descrição
<âmbitos> Uma coleção de URIs de âmbito para o ponto final. Mais do que um uris de âmbito pode ser associado a um único ponto final.
<extensões> [do <ponto finalDiscovery>] Uma coleção de elementos XML que lhe permite especificar metadados personalizados a publicar para um ponto final.
<tipos> Uma coleção de interfaces a procurar.

Elementos Principais

Elemento Descrição
<comportamento> Especifica um elemento de comportamento.

Observações

Quando adicionado à configuração de comportamento do ponto final e com o enabled atributo definido como true, este elemento de configuração permite a sua deteção. Além disso, pode utilizar o <elemento subordinado de âmbitos>para especificar uris de âmbito personalizado que podem ser utilizados para filtrar pontos finais de serviço durante a consulta, bem como o <elemento subordinado de extensões> para especificar metadados personalizados que devem ser publicados juntamente com os metadados detetáveis padrão (EPR, ContractTypeName, BindingName, Scope e ListenURI).

Este elemento de configuração depende do <elemento serviceDiscovery> que fornece o controlo ao nível do serviço da deteção. Isto significa que as definições deste elemento são ignoradas se <serviceDiscovery> não estiver presente na configuração.

Exemplo

O exemplo de configuração seguinte especifica âmbitos de filtragem e metadados de extensão a publicar para um ponto final.

<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>

Ver também