Partilhar via


<serviceDebug>

Especifica funcionalidades de informação de depuração e ajuda para um serviço do Windows Communication Foundation (WCF).

<configuração>
  <system.serviceModel>
    <comportamentos>
      <serviceBehaviors>
        <comportamento>
          <serviceDebug>

Syntax

<serviceDebug httpHelpPageBinding="String"
              httpHelpPageBindingConfiguration="String"
              httpHelpPageEnabled="Boolean"
              httpHelpPageUrl="Uri"
              httpsHelpPageBinding="String"
              httpsHelpPageBindingConfiguration="String"
              httpsHelpPageEnabled="Boolean"
              httpsHelpPageUrl="Uri"
              includeExceptionDetailInFaults="Boolean" />

Atributos e Elementos

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

Atributos

Atributo Descrição
httpHelpPageBinding Um valor de cadeia que especifica o tipo de enlace a ser utilizado quando HTTP é utilizado para aceder à página de ajuda do serviço.

Apenas serão suportados enlaces com elementos de enlace internos suportados System.ServiceModel.Channels.IReplyChannel . Além disso, a System.ServiceModel.Channels.MessageVersion propriedade do enlace tem de ser MessageVersion.None.
httpHelpPageBindingConfiguration Uma cadeia que especifica o nome do enlace especificado no httpHelpPageBinding atributo, que faz referência às informações de configuração adicionais deste enlace. O mesmo nome tem de ser definido na <bindings> secção.
httpHelpPageEnabled Um valor booleano que controla se o WCF publica uma página de ajuda HTML no endereço especificado pelo httpHelpPageUrl atributo. A predefinição é true.

Pode definir esta propriedade para false desativar a publicação de uma página de ajuda HTML visível para browsers HTML.

Para garantir que a página de ajuda HTML é publicada na localização controlada pelo httpHelpPageUrl atributo, tem de definir este atributo como true. Além disso, uma das seguintes condições também tem de ser cumprida:

- O httpHelpPageUrl atributo é um endereço absoluto que suporta o esquema de protocolo HTTP.
- Existe um endereço base para o serviço que suporta o esquema de protocolo HTTP.

Embora seja emitida uma exceção se um endereço absoluto que não suporta o esquema de protocolo HTTP for atribuído ao httpHelpPageUrl atributo, qualquer outro cenário em que nenhum dos critérios anteriores seja cumprido resulta em nenhuma exceção e nenhuma página de ajuda HTML.
httpHelpPageUrl Um URI que especifica o URL relativo ou absoluto baseado em HTTP do ficheiro de ajuda HTML personalizado que o utilizador vê quando o ponto final é visualizado através de um browser HTML.

Pode utilizar este atributo para ativar a utilização de um ficheiro de ajuda HTML personalizado que é devolvido a partir de um pedido HTTP/Obter, por exemplo, a partir de um browser HTML. A localização do ficheiro de ajuda HTML é resolvida da seguinte forma.

1. Se o valor deste atributo for um endereço relativo, a localização do ficheiro de ajuda HTML é o valor do endereço base de serviço que suporta pedidos HTTP, além deste valor de propriedade.
2. Se o valor deste atributo for um endereço absoluto e suportar pedidos HTTP, a localização do ficheiro de ajuda HTML é o valor desta propriedade.
3. Se o valor deste atributo for absoluto, mas não suportar pedidos HTTP, é emitida uma exceção.

Este atributo só é válido quando o httpHelpPageEnabled atributo é true.
httpsHelpPageBinding Um valor de cadeia que especifica o tipo de enlace a utilizar quando o HTTPS é utilizado para aceder à página de ajuda do serviço.

Apenas serão suportados enlaces com elementos de enlace internos suportados IReplyChannel . Além disso, a System.ServiceModel.Channels.MessageVersion propriedade do enlace tem de ser MessageVersion.None.
httpsHelpPageBindingConfiguration Uma cadeia que especifica o nome do enlace especificado no httpsHelpPageBinding atributo, que faz referência às informações de configuração adicionais deste enlace. O mesmo nome tem de ser definido na <bindings> secção.
httpsHelpPageEnabled Um valor booleano que controla se o WCF publica uma página de ajuda HTML no endereço especificado pelo httpsHelpPageUrl atributo. A predefinição é true.

Pode definir esta propriedade para false desativar a publicação de uma página de ajuda HTML visível para browsers HTML.

Para garantir que a página de ajuda HTML é publicada na localização controlada pelo httpsHelpPageUrl atributo, tem de definir este atributo como true. Além disso, uma das seguintes condições também tem de ser cumprida:

- O httpsHelpPageUrl atributo é um endereço absoluto que suporta o esquema de protocolo HTTPS.
- Existe um endereço base para o serviço que suporta o esquema de protocolo HTTPS.

Embora seja emitida uma exceção se um endereço absoluto que não suporta o esquema de protocolo HTTPS for atribuído ao httpsHelpPageUrl atributo, qualquer outro cenário em que nenhum dos critérios anteriores seja cumprido resulta em nenhuma exceção e nenhuma página de ajuda HTML.
httpsHelpPageUrl Um URI que especifica o URL relativo ou absoluto baseado em HTTPS do ficheiro de ajuda HTML personalizado que o utilizador vê quando o ponto final é visualizado através de um browser HTML.

Pode utilizar este atributo para ativar a utilização de um ficheiro de ajuda HTML personalizado que é devolvido a partir de um pedido HTTPS/Obter, por exemplo, a partir de um browser HTML. A localização do ficheiro de ajuda HTML é resolvida da seguinte forma:

- Se o valor desta propriedade for um endereço relativo, a localização do ficheiro de ajuda HTML é o valor do endereço base de serviço que suporta pedidos HTTPS, além deste valor de propriedade.
- Se o valor desta propriedade for um endereço absoluto e suportar pedidos HTTPS, a localização do ficheiro de ajuda HTML é o valor desta propriedade.
- Se o valor desta propriedade for absoluto, mas não suportar pedidos HTTPS, é emitida uma exceção.

Este atributo só é válido quando o httpHelpPageEnabled atributo é true.
includeExceptionDetailInFaults Um valor que especifica se pretende incluir informações de exceção geridas no detalhe das falhas SOAP devolvidas ao cliente para fins de depuração. A predefinição é false.

Se definir este atributo como true, pode ativar o fluxo de informações de exceção geridas para o cliente para fins de depuração, bem como a publicação de ficheiros de informações HTML para utilizadores que navegam no serviço em browsers. Atenção: Devolver informações de exceção gerida aos clientes pode ser um risco para a segurança. Isto deve-se ao facto de os detalhes da exceção exporem informações sobre a implementação do serviço interno que podem ser utilizadas por clientes não autorizados.

Elementos Subordinados

Nenhum.

Elementos Principais

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

Observações

A definição includeExceptionDetailInFaults para true permitir que o serviço devolva qualquer exceção que seja emitida pelo código da aplicação, mesmo que a exceção não seja declarada com o FaultContractAttribute. Esta definição é útil ao depurar casos em que o servidor está a gerar uma exceção inesperada. Ao utilizar este atributo, é devolvida uma forma serializada da exceção desconhecida e pode examinar mais detalhes da exceção.

Atenção

Devolver informações de exceção gerida aos clientes pode ser um risco de segurança porque os detalhes da exceção expõem informações sobre a implementação do serviço interno que podem ser utilizadas por clientes não autorizados. Devido aos problemas de segurança envolvidos, recomenda-se vivamente que o faça apenas em cenários de depuração controlados. Deve definir includeExceptionDetailInFaults como ao false implementar a sua aplicação.

Para obter detalhes sobre os problemas de segurança relacionados com a exceção gerida, veja Especificar e Processar Falhas em Contratos e Serviços. Para obter um exemplo de código, veja Comportamento de Depuração do Serviço.

Também pode definir httpsHelpPageEnabled e httpsHelpPageUrl ativar ou desativar a página de ajuda. Opcionalmente, cada serviço pode expor uma página de ajuda que contém informações sobre o serviço, incluindo o ponto final para obter o WSDL para o serviço. Isto pode ser ativado ao definir httpHelpPageEnabled como true. Isto permite que a página de ajuda seja devolvida a um pedido GET para o endereço base do serviço. Pode alterar este endereço ao definir o httpHelpPageUrl atributo. Além disso, pode tornar isto seguro com HTTPS em vez de HTTP.

Os atributos e httpHelpPageBinding opcionais httpHelpPageBinding permitem-lhe configurar os enlaces utilizados para aceder à página Web do serviço. Se não forem especificados, os enlaces predefinidos (HttpTransportBindingElementno caso de HTTP e HttpsTransportBindingElement, no caso de HTTPS) são utilizados para o acesso à página de ajuda do serviço conforme adequado. Tenha em atenção que não pode utilizar estes atributos com os enlaces WCF incorporados. Apenas serão suportados enlaces com elementos de enlace internos que suportem xref:System.ServiceModel.Channels.IReplyChannel> . Além disso, a System.ServiceModel.Channels.MessageVersion propriedade do enlace tem de ser MessageVersion.None.

Ver também