Condividi tramite


ServiceDebugBehavior Classe

Definizione

Abilita le funzionalità di debug e informazioni della Guida per un servizio Windows Communication Foundation (WCF).

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
Ereditarietà
ServiceDebugBehavior
Implementazioni

Esempio

Nell'esempio di codice seguente viene illustrato come usare un file di configurazione per abilitare la funzionalità della pagina della Guida HTML e restituire le informazioni sulle eccezioni all'interno di un errore SOAP al client a scopo di debug, oltre ad abilitare il supporto dei metadati. Questo file di configurazione illustra i passaggi di base seguenti per aggiungere il supporto per le ServiceDebugBehavior funzionalità:

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

Commenti

Utilizzare le ServiceDebugBehavior proprietà di un file di configurazione o a livello di codice per abilitare il flusso di informazioni sulle eccezioni gestite al client a scopo di debug, nonché la pubblicazione di file di informazioni HTML per gli utenti che esplorano il servizio nei Web browser.

Impostare la IncludeExceptionDetailInFaults proprietà su true per indicare a WCF di restituire informazioni sulle eccezioni gestite negli errori SOAP ai client a scopo di debug.

Attenzione

La restituzione di informazioni sulle eccezioni gestite ai client può essere un rischio per la sicurezza perché i dettagli delle eccezioni espongono informazioni sull'implementazione del servizio interno che potrebbero essere usate da client non autorizzati. Inoltre, anche se le ServiceDebugBehavior proprietà possono essere impostate anche programmaticamente, può essere facile dimenticare di disabilitare IncludeExceptionDetailInFaults durante la distribuzione.

A causa dei problemi di sicurezza coinvolti, è consigliabile:

  • Usare un file di configurazione dell'applicazione per impostare il valore della IncludeExceptionDetailInFaults proprietà su true.

  • Questa operazione viene eseguita solo in scenari di debug controllati.

Per altre informazioni sui problemi di sicurezza relativi alle informazioni sulle eccezioni gestite, vedere Impostazione e gestione degli errori in Contratti e servizi.

Le HttpHelpPageEnabled proprietà e HttpsHelpPageEnabled indicano al servizio di pubblicare file della Guida HTML quando il servizio viene visualizzato usando un browser HTML.

Le HttpHelpPageUrl proprietà e HttpsHelpPageUrl controllano la posizione della pagina della Guida HTML visualizzata.

Per abilitare o disabilitare una delle funzionalità usando un file di ServiceDebugBehavior configurazione:

  1. Aggiungere un behaviorConfiguration attributo all'elemento <del servizio> per il servizio WCF. I comportamenti degli endpoint vengono configurati sugli <elementi dell'endpoint> ; i comportamenti del servizio sugli <elementi del servizio> .

  2. Aggiungere o creare una <sezione serviceBehaviors> e aggiungere un <elemento di comportamento> a tale elemento con il nome che corrisponde al valore dell'attributo del behaviorConfiguration passaggio 1. I comportamenti degli endpoint vengono configurati usando un <elemento endpointBehaviors> . I comportamenti del servizio vengono configurati usando un <elemento serviceBehaviors> .

  3. Aggiungere un <elemento serviceDebug> all'elemento <di comportamento> del passaggio 2 e abilitare o disabilitare le varie proprietà appropriate per lo scenario.

Per un esempio specifico, vedere la sezione Esempio.

Costruttori

Nome Descrizione
ServiceDebugBehavior()

Inizializza una nuova istanza della classe ServiceDebugBehavior.

Proprietà

Nome Descrizione
HttpHelpPageBinding

Ottiene o imposta l'accesso di alto livello alla definizione di un'associazione.

HttpHelpPageEnabled

Ottiene o imposta un valore che controlla se Windows Communication Foundation (WCF) pubblica una pagina della Guida HTML nell'indirizzo controllato dalla HttpHelpPageUrl proprietà .

HttpHelpPageUrl

Ottiene o imposta il percorso in cui viene pubblicato il file della Guida HTML.

HttpsHelpPageBinding

Ottiene o imposta l'accesso di alto livello alla definizione di un'associazione.

HttpsHelpPageEnabled

Ottiene o imposta un valore che specifica se Windows Communication Foundation (WCF) restituisce un file della Guida HTML su HTTPS all'indirizzo controllato dalla HttpsHelpPageUrl proprietà .

HttpsHelpPageUrl

Ottiene o imposta il percorso in cui viene pubblicato un file HTML per il recupero tramite HTTPS.

IncludeExceptionDetailInFaults

Ottiene o imposta un valore che specifica se includere informazioni sulle eccezioni gestite nei dettagli degli errori SOAP restituiti al client a scopo di debug.

Metodi

Nome Descrizione
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

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

Implementa il AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) metodo per supportare il comportamento.

IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase)

Implementa il ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) metodo per supportare il comportamento.

IServiceBehavior.Validate(ServiceDescription, ServiceHostBase)

Implementa il Validate(ServiceDescription, ServiceHostBase) metodo per supportare il comportamento.

Si applica a