ServiceDebugBehavior Classe

Definição

Habilita recursos de depuração e informações de ajuda para um serviço do WCF (Windows Communication Foundation).

public ref class ServiceDebugBehavior : System::ServiceModel::Description::IServiceBehavior
public class ServiceDebugBehavior : System.ServiceModel.Description.IServiceBehavior
type ServiceDebugBehavior = class
    interface IServiceBehavior
Public Class ServiceDebugBehavior
Implements IServiceBehavior
Herança
ServiceDebugBehavior
Implementações

Exemplos

O exemplo de código a seguir mostra como usar um arquivo de configuração para habilitar o recurso de página de ajuda HTML e retornar informações de exceção dentro de uma falha SOAP de volta ao cliente para fins de depuração, além de habilitar o suporte a metadados. Este arquivo de configuração mostra as seguintes etapas básicas para adicionar suporte aos ServiceDebugBehavior recursos:

<configuration>
  <system.serviceModel>
    <services>
      <!-- 
        Step 1. Add a behaviorConfiguration attribute
        in the <service> element.
      -->
      <service 
        name="Microsoft.WCF.Documentation.SampleService"
        behaviorConfiguration="metadataAndDebug">
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:8080/SampleService" />
          </baseAddresses>
        </host>
        <endpoint
          address=""
          binding="wsHttpBinding"
          contract="Microsoft.WCF.Documentation.ISampleService"
        />
        <endpoint
           address="mex"
           binding="mexHttpBinding"
           contract="IMetadataExchange"
        />
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <!-- 
          Step 2. Inside a <serviceBehaviors> section, add 
          a name attribute in the <behaviors> element that 
          matches the behaviorConfiguration attribute in the
          <service> element above.
        -->
        <behavior name="metadataAndDebug">
          <serviceMetadata 
            httpGetEnabled="true" 
            httpGetUrl=""
          />
          <!-- 
            Step 3. Add a <serviceDebug> element and 
            modify the various attributes that suit your 
            scenario.
          -->
          <serviceDebug 
            httpHelpPageEnabled="true" 
            includeExceptionDetailInFaults="true"
          />
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>
</configuration>

Comentários

Use as ServiceDebugBehavior propriedades de um arquivo de configuração ou programaticamente para habilitar o fluxo de informações de exceção gerenciadas para o cliente para fins de depuração, bem como a publicação de arquivos de informações HTML para usuários que navegam pelo serviço em navegadores da Web.

Defina a propriedade para true instruir o IncludeExceptionDetailInFaults WCF a retornar informações de exceção gerenciadas em falhas SOAP para clientes para fins de depuração.

Cuidado

Retornar informações de exceção gerenciadas aos clientes pode ser um risco de segurança porque os detalhes da exceção expõem informações sobre a implementação de serviço interno que podem ser usadas por clientes não autorizados. Além disso, embora as ServiceDebugBehavior propriedades também possam ser definidas programaticamente, pode ser fácil esquecer de desabilitar IncludeExceptionDetailInFaults ao implantar.

Devido aos problemas de segurança envolvidos, é altamente recomendável que:

  • Você usa um arquivo de configuração de aplicativo para definir o valor da IncludeExceptionDetailInFaults propriedade como true.

  • Você só faz isso em cenários de depuração controlados.

Para obter mais informações sobre os problemas de segurança relacionados a informações de exceção gerenciadas, consulte Especificando e tratando falhas em contratos e serviços.

As HttpHelpPageEnabled propriedades e HttpsHelpPageEnabled o serviço instruem o serviço a publicar arquivos de ajuda HTML quando o serviço é exibido usando um navegador HTML.

As HttpHelpPageUrl propriedades e HttpsHelpPageUrl as propriedades controlam o local da página de ajuda HTML exibida.

Para habilitar ou desabilitar um dos ServiceDebugBehavior recursos usando um arquivo de configuração:

  1. Adicione um behaviorConfiguration atributo ao elemento de serviço> para seu< serviço WCF. Comportamentos de ponto de extremidade são configurados em <endpoint> elementos; comportamentos de serviço em <elementos de serviço> .

  2. Adicione ou crie uma <seção serviceBehaviors> e adicione um <elemento de comportamento> a ele com o nome que corresponde ao valor do behaviorConfiguration atributo da etapa 1. Comportamentos de ponto de extremidade são configurados usando um <elemento endpointBehaviors; os comportamentos> de serviço são configurados usando um <elemento serviceBehaviors> .

  3. Adicione um <elemento serviceDebug> ao <elemento de comportamento> da etapa 2 e habilite ou desabilite as várias propriedades apropriadas ao seu cenário.

Para obter um exemplo específico, consulte a seção Exemplo.

Construtores

ServiceDebugBehavior()

Inicializa uma nova instância da classe ServiceDebugBehavior.

Propriedades

HttpHelpPageBinding

Obtém ou define o acesso de alto nível para a definição de uma associação.

HttpHelpPageEnabled

Obtém ou define um valor que controla se o WCF (Windows Communication Foundation) publica uma página de ajuda HTML no endereço controlado pela propriedade HttpHelpPageUrl.

HttpHelpPageUrl

Obtém ou define o local em que o arquivo de ajuda HTML é publicado.

HttpsHelpPageBinding

Obtém ou define o acesso de alto nível para a definição de uma associação.

HttpsHelpPageEnabled

Obtém ou define um valor que especifica se o WCF (Windows Communication Foundation) retorna um arquivo de ajuda HTML via HTTPS no endereço controlado pela propriedade HttpsHelpPageUrl.

HttpsHelpPageUrl

Obtém ou define o local no qual um arquivo HTML é publicado para recuperação usando HTTPS.

IncludeExceptionDetailInFaults

Um valor que especifica se são incluídas informações de exceção gerenciada no detalhe de falhas SOAP retornadas para o cliente para fins de depuração.

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Implantações explícitas de interface

IServiceBehavior.AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection)

Implementa o método AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) para dar suporte ao comportamento.

IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase)

Implementa o método ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) para dar suporte ao comportamento.

IServiceBehavior.Validate(ServiceDescription, ServiceHostBase)

Implementa o método Validate(ServiceDescription, ServiceHostBase) para dar suporte ao comportamento.

Aplica-se a