<system.serviceModel>
Esta seção de configuração contém todos os elementos de configuração do ServiceModel do Windows Communication Foundation (WCF).
<configuração>
<system.serviceModel>
Syntax
<system.serviceModel>
<behaviors>
</behaviors>
<bindings>
</bindings>
<client>
</client>
<comContracts>
</comContracts>
<commonBehaviors>
</commonBehaviors>
<diagnostics>
</diagnostics>
<extensions>
</extensions>
<protocolMapping>
</protocolMapping>
<routing>
</routing>
<serviceHostingEnvironment>
</serviceHostingEnvironment>
<services>
</services>
<standardEndpoints>
</standardEndpoints>
<tracking>
</tracking>
</system.serviceModel>
Atributos e elementos
As seções a seguir descrevem atributos, elementos filho e elementos pai.
Atributos
Nenhum
Elementos filho
Elemento | Descrição |
---|---|
<comportamentos> | Esta seção define duas coleções filho nomeadas endpointBehaviors e serviceBehaviors . Cada coleção define elementos de comportamento consumidos por pontos de extremidade e serviços, respectivamente. Cada elemento do comportamento é identificado por seu exclusivo name atributo. |
<associações> | Essa seção contém uma coleção de associações padrão e personalizadas. Cada entrada é identificada por seu exclusivo name . Os serviços usam associações vinculando-as usando o name . |
<cliente> | Esta seção contém uma lista de pontos de extremidade que um cliente usa para se conectar a um serviço. |
<comContracts> | Esta seção define os contratos COM habilitados para interoperabilidade WCF e COM. |
<commonBehaviors> | Esta seção só pode ser definida no arquivo machine.config. Ela define duas coleções filho nomeadas endpointBehaviors e serviceBehaviors . Cada coleção define elementos de comportamento consumidos por todos os pontos de extremidade e serviços do WCF no computador, respectivamente. Se um comportamento for definido nas seções <commonBehaviors> e <behaviors> , o comportamento na seção de <comportamentos> terá preferência. |
<diagnóstico> | Esta seção contém configurações para os recursos de diagnóstico do WCF. O usuário pode habilitar/desabilitar o rastreamento, os contadores de desempenho e o provedor WMI e pode adicionar filtros de mensagem personalizados. |
<extensões> | Esta seção contém uma coleção de extensões, que permitem que o usuário crie associações, comportamentos e outros aspectos de extensões definidos pelo usuário. |
<protocolMapping> | Esta seção define um conjunto de mapeamento de protocolo padrão entre esquemas de protocolo de transporte (por exemplo, http, net.tcp, net.pipe etc.) e associações WCF. |
<roteamento> | Esta seção define um conjunto de filtros de roteamento, que determinam o tipo de Windows Communication Foundation (WCF)MessageFilter a ser usado ao avaliar mensagens de entrada, bem como tabelas de roteamento que definem os pontos de extremidade de destino para os quais enviar mensagens quando um filtro corresponder. |
<serviceHostingEnvironment> | Essa seção define qual tipo de ambiente de hospedagem de serviço instancia para um transporte em particular. Se essa seção estiver vazia, o tipo padrão será usado. |
<serviços> | A seção contém uma coleção de serviços. Para cada serviço definido no assembly, esse elemento contém um elemento service que especifica as configurações do serviço. |
<standardEndpoints> | Esta seção define uma coleção de pontos de extremidade padrão, que são pontos de extremidade pré-configurados reutilizáveis. Um ponto de extremidade padrão terá um ou mais atributos de endereço, associação e contrato definidos como um valor fixo. Por exemplo, no ponto de extremidade de descoberta, o contrato é corrigido. Você também pode usar pontos de extremidade padrão para estender o ponto de extremidade de serviço com novas propriedades semelhantes à definição de associações personalizadas. |
<acompanhamento> | Esta seção define as configurações de acompanhamento de um serviço de fluxo de trabalho. |
Elementos pai
Elemento | Descrição |
---|---|
<configuração> | O elemento raiz para todos os elementos de configuração em um arquivo de configuração do .NET. |
Comentários
O WCF não adiciona elementos às seções de configuração de outros produtos.
Os serviços WCF são definidos na seção services
do arquivo de configuração. Um assembly pode conter qualquer número de serviços. Cada serviço tem sua própria seção de configuração service
. A seção e seu conteúdo definem o contrato de serviço, o comportamento e os pontos de extremidade do serviço em particular.
Somente um atributo name
do serviço é necessário. Por padrão, o nome de um serviço descreve o tipo CLR subjacente usado para implementar um serviço; no entanto, você pode alterar a propriedade ConfigurationName em um ServiceContractAttribute para substituir o requisito de tipo CLR.
O atributo behaviorConfiguration
é opcional. Ele identifica o comportamento do serviço usado por um serviço. O comportamento especificado por esse atributo deve vincular-se a um comportamento de serviço definido no escopo do mesmo arquivo de configuração (ou seja, o mesmo arquivo ou um arquivo pai).
Cada serviço expõe um ou mais pontos de extremidade definidos em um elemento endpoint
. Cada ponto de extremidade tem seu próprio endereço e associação. Todas as associações usadas no arquivo de configuração devem ser definidas no escopo do arquivo.
As associações são vinculadas a pontos de extremidade por meio da combinação dos atributos name
e bindingConfiguration
. O atributo binding
define em qual seção a associação está definida. O atributo bindingConfiguration
define qual associação configurada dentro da seção de associação é usada. Uma seção de associação pode definir várias associações configuradas.
Exemplo
Aqui está um exemplo de um arquivo de configuração do WCF.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<behaviors>
<!-- List of Behaviors -->
</behaviors>
<client>
<!-- List of Endpoints -->
</client>
<diagnostics wmiProviderEnabled="false"
performanceCountersEnabled="false"
tracingEnabled="false">
</diagnostics>
<serviceHostingEnvironment>
<!-- List of entries -->
</serviceHostingEnvironment>
<comContracts>
<!-- List of COM+ Contracts -->
</comContracts>
<services>
<!-- List of Services -->
</services>
<bindings>
<!-- List of Bindings -->
</bindings>
</system.serviceModel>
</configuration>