ServiceDebugBehavior Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Abilita informazioni di debug e 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 utilizzare un file di configurazione per l'attivazione della funzionalità delle pagine della Guida HTML e la restituzione al client di informazioni sulle eccezioni all'interno di un errore SOAP a fini di debug, oltre all'attivazione del supporto dei metadati. In questo file di configurazione vengono illustrati i seguenti passaggi di base che consentono l'aggiunta del supporto per le funzionalità di ServiceDebugBehavior:
Poiché il ServiceDebugBehavior tipo è un'implementazione System.ServiceModel.Description.IServiceBehavior , l'elemento <del servizio> che rappresenta il tipo di servizio ha un identificatore di configurazione del comportamento di
behaviorConfiguration="metadataAndDebug"
.Poiché il ServiceDebugBehavior tipo è un System.ServiceModel.Description.IServiceBehavior elemento di comportamento<> viene aggiunto a una <sezione serviceBehaviors>. Impostare l'attributo dell'elemento
name
<behavior> il cui valore è l'identificatore dell'attributobehaviorConfiguration
dell'elemento <del servizio> . In questo caso il valore èmetadataAndDebug
.Aggiungere un <elemento serviceDebug> con i vari attributi impostati sulla configurazione desiderata. In questo caso i valori
httpHelpPageEnabled
eincludeExceptionDetailInFaults
degli attributi sono impostati sutrue
.
<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 proprietà ServiceDebugBehavior da un file di configurazione o a livello di programmazione per abilitare il flusso di informazioni sulle eccezioni gestite al client a fini di debug, nonché la pubblicazione di file di informazioni HTML per gli utenti che accedono al servizio tramite un browser Web.
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 ai client delle informazioni sulle eccezioni gestite può rappresentare un rischio per la sicurezza, poiché i dettagli delle eccezioni espongono informazioni sull'implementazione del servizio interno che potrebbero essere usate da client non autorizzati. Inoltre, sebbene le proprietà ServiceDebugBehavior possono essere impostate anche a livello di programmazione, può essere facile dimenticare di disattivare IncludeExceptionDetailInFaults quando si esegue la distribuzione.
A causa dei problemi di sicurezza coinvolti, è consigliato:
Usare un file di configurazione dell'applicazione per impostare il valore della proprietà IncludeExceptionDetailInFaults su
true
.Si procede in questo modo solo negli scenari di debug controllati.
Per altre informazioni sui problemi di sicurezza correlati alle informazioni sulle eccezioni gestite, vedere Specifica e gestione degli errori in Contratti e servizi.
Le proprietà HttpHelpPageEnabled e HttpsHelpPageEnabled indicano al servizio di pubblicare file della Guida HTML quando il servizio viene visualizzato tramite un browser HTML.
Le proprietà HttpHelpPageUrl e HttpsHelpPageUrl controllano il percorso della pagina della Guida HTML visualizzata.
Per abilitare o disabilitare una delle funzionalità ServiceDebugBehavior utilizzando un file di configurazione:
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> .Aggiungere o creare una <sezione serviceBehaviors> e aggiungere un <elemento di comportamento> a tale con il nome corrispondente al valore dell'attributo
behaviorConfiguration
del passaggio 1. I comportamenti degli endpoint vengono configurati usando un <elemento endpointBehaviors. I comportamenti del servizio vengono configurati usando un elemento serviceBehaviors>>.<Aggiungere un <elemento serviceDebug> all'elemento <comportamento> del passaggio 2 e abilitare o disabilitare le varie proprietà appropriate per lo scenario.
Per un esempio specifico, vedere la sezione relativa agli esempi.
Costruttori
ServiceDebugBehavior() |
Inizializza una nuova istanza della classe ServiceDebugBehavior. |
Proprietà
HttpHelpPageBinding |
Ottiene o imposta 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 all'indirizzo controllato dalla proprietà HttpHelpPageUrl. |
HttpHelpPageUrl |
Ottiene o imposta il percorso in cui viene pubblicato il file della Guida HTML. |
HttpsHelpPageBinding |
Ottiene o imposta 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 proprietà HttpsHelpPageUrl. |
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 sugli errori SOAP restituiti al client a scopo di debug. |
Metodi
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 l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
IServiceBehavior.AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) |
Implementa il metodo AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) per supportare il comportamento. |
IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) |
Implementa il metodo ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) per supportare il comportamento. |
IServiceBehavior.Validate(ServiceDescription, ServiceHostBase) |
Implementa il metodo Validate(ServiceDescription, ServiceHostBase) per supportare il comportamento. |