Condividi tramite


<debugServizio>

Specifica informazioni di debug e di Guida per un servizio Windows Communication Foundation (WCF).

Gerarchia dello schema

<system.serviceModel>
  <comportamenti>
    <comportamentiServizio>
      <behavior> di <serviceBehaviors>
        <debugServizio>

Sintassi

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

Attributi ed elementi

Nelle sezioni seguenti vengono descritti attributi, elementi figlio ed elementi padre.

Attributi

Attributo Descrizione

httpHelpPageBinding

Valore stringa che specifica il tipo di associazione da utilizzare quando HTTP viene utilizzato per accedere alla pagina della Guida del servizio.

Verranno supportate sole le associazioni con elementi di associazione interni che supportano System.ServiceModel.Channels.IReplyChannel. La proprietà System.ServiceModel.Channels.MessageVersion dell'associazione deve inoltre essere System.ServiceModel.Channels.MessageVersion.None.

httpHelpPageBindingConfiguration

Stringa che specifica il nome dell'associazione specificata nell'attributo httpHelpPageBinding che fa riferimento alle informazioni di configurazione aggiuntive di questa associazione. Lo stesso nome deve essere definito nella sezione <bindings>.

httpHelpPageEnabled

Valore booleano che controlla se WCF pubblica una pagina della Guida HTML all'indirizzo specificato dall'attributo httpHelpPageUrl. Il valore predefinito è true.

È possibile impostare questa proprietà su false per disabilitare la pubblicazione di una pagina della Guida HTML visibile ai browser HTML.

Per garantire che la pagina della Guida HTML sia pubblicata nel percorso controllato dall'attributo httpHelpPageUrl, è necessario impostare questo attributo su true. Deve inoltre venire soddisfatta anche una delle condizioni seguenti:

  • L'attributo httpHelpPageUrl è un indirizzo assoluto che supporta lo schema del protocollo HTTP.

  • È presente un indirizzo di base per il servizio che supporta lo schema del protocollo HTTP.

Sebbene venga generata un'eccezione quando all'attributo httpHelpPageUrl viene assegnato un indirizzo assoluto che non supporta lo schema del protocollo HTTP, qualsiasi altro scenario nel quale non viene soddisfatto alcuno dei criteri precedenti comporta il fatto che non venga generata alcuna eccezione e che non sia disponibile alcuna pagina della Guida HTML.

httpHelpPageUrl

URI che specifica l'URL relativo o assoluto basato su HTTPS del file della Guida HTML personalizzato visualizzato all'utente durante la visualizzazione dell'endpoint tramite un browser HTML.

È possibile utilizzare questo attributo per consentire l'utilizzo di un file della Guida HTML personalizzato restituito da una richiesta HTTP/Get, ad esempio, da un browser HTML. Il percorso del file della Guida HTML viene risolto come segue.

  1. Se il valore di questo attributo è un indirizzo relativo, il percorso del file della Guida HTML è uguale al valore dell'indirizzo di base del servizio che supporta le richieste HTTP, più il valore di questa proprietà.

  2. Se il valore di questo attributo è un indirizzo assoluto e supporta le richieste HTTP, il percorso del file della Guida HTML è uguale al valore di questa proprietà.

  3. Se il valore di questo attributo è assoluto ma non supporta le richieste HTTP, viene generata un'eccezione.

Questo attributo è valido solo quando l'attributo httpHelpPageEnabled è true.

httpsHelpPageBinding

Valore stringa che specifica il tipo di associazione da utilizzare quando HTTPS viene utilizzato per accedere alla pagina della Guida del servizio.

Verranno supportate sole le associazioni con elementi di associazione interni che supportano System.ServiceModel.Channels.IReplyChannel. La proprietà System.ServiceModel.Channels.MessageVersion dell'associazione deve inoltre essere System.ServiceModel.Channels.MessageVersion.None.

httpsHelpPageBindingConfiguration

Stringa che specifica il nome dell'associazione specificata nell'attributo httpsHelpPageBinding che fa riferimento alle informazioni di configurazione aggiuntive di questa associazione. Lo stesso nome deve essere definito nella sezione <bindings>.

httpsHelpPageEnabled

Valore booleano che controlla se WCF pubblica la pagina della Guida HTML all'indirizzo specificato dall'attributo httpsHelpPageUrl. Il valore predefinito è true.

È possibile impostare questa proprietà su false per disabilitare la pubblicazione di una pagina della Guida HTML visibile ai browser HTML.

Per garantire che la pagina della Guida HTML sia pubblicata nel percorso controllato dall'attributo httpsHelpPageUrl, è necessario impostare questo attributo su true. Deve inoltre venire soddisfatta anche una delle condizioni seguenti:

  • L'attributo httpsHelpPageUrl è un indirizzo assoluto che supporta lo schema del protocollo HTTPS.

  • È presente un indirizzo di base per il servizio che supporta lo schema del protocollo HTTPS.

Sebbene venga generata un'eccezione quando all'attributo httpsHelpPageUrl viene assegnato un indirizzo assoluto che non supporta lo schema del protocollo HTTPS, qualsiasi altro scenario nel quale non viene soddisfatto alcuno dei criteri precedenti comporta il fatto che non venga generata alcuna eccezione e non sia disponibile alcuna pagina della Guida HTML.

httpsHelpPageUrl

URI che specifica l'URL relativo o assoluto basato su HTTP del file della Guida HTML personalizzato visualizzato all'utente durante la visualizzazione dell'endpoint tramite un browser HTML.

È possibile utilizzare questo attributo per consentire l'utilizzo di un file della Guida HTML personalizzato restituito da una richiesta HTTPS/Get, ad esempio, da un browser HTML. Il percorso del file della Guida HTML viene risolto come segue.

  • Se il valore di questa proprietà è un indirizzo relativo, il percorso del file della Guida HTML è uguale al valore dell'indirizzo di base del servizio che supporta le richieste HTTPS, più il valore di questa proprietà.

  • Se il valore di questa proprietà è un indirizzo assoluto e supporta le richieste HTTPS, il percorso del file della Guida HTML è uguale al valore di questa proprietà.

  • Se il valore di questa proprietà è assoluto ma non supporta le richieste HTTPS, viene generata un'eccezione.

Questo attributo è valido solo quando l'attributo httpHelpPageEnabled è true.

includeExceptionDetailInFaults

Valore che specifica se includere informazioni sulle eccezioni gestite nei dettagli degli errori SOAP restituiti al client per scopi di debug. Il valore predefinito è false.

Se si imposta l'attributo su true, è possibile 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.

ms788993.Caution(it-it,VS.100).gifAttenzione:
La restituzione ai client di informazioni sulle eccezioni gestite può costituire un rischio per la sicurezza. Questo perché i dettagli delle eccezioni espongono informazioni sull'implementazione interna del servizio che potrebbero venire utilizzate da client non autorizzati.

Elementi figlio

Nessuno.

Elementi padre

Elemento Descrizione

<behavior> di <endpointBehaviors>

Specifica un elemento di comportamento.

Osservazioni

L'impostazione di includeExceptionDetailInFaults su true consente al servizio di restituire qualsiasi eccezione che è generata dal codice dell'applicazione anche se l'eccezione non è dichiarata mediante FaultContractAttribute. Questa impostazione è utile in caso dell'esecuzione il debug di casi dove il server sta generando un'eccezione imprevista. L'utilizzo di questo attributo consente la restituzione di un modulo serializzato dell'eccezione sconosciuta e offre all'utente la possibilità di esaminare l'eccezione in dettaglio.

ms788993.Caution(it-it,VS.100).gifAttenzione:
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 utilizzate da client non autorizzati. A causa dei problemi di sicurezza associati, è consigliabile procedere in tal modo solo negli scenari di debug controllati. Durante la distribuzione dell'applicazione, è necessario impostare includeExceptionDetailInFaults su false.

Per informazioni dettagliate sui problemi di sicurezza correlati alle eccezioni gestite, vedere Specifying and Handling Faults in Contracts and Services. Per un esempio di codice, vedere Service Debug Behavior.

Per abilitare o disabilitare la pagina della Guida, è inoltre possibile impostare httpsHelpPageEnabled e httpsHelpPageUrl. Ogni servizio può esporre facoltativamente una pagina della Guida che contiene informazioni sul servizio incluso l'endpoint ottenere WSDL per il servizio. A tale fine, impostare httpHelpPageEnabled su true. Consente di restituire la pagina della Guida a una richiesta GET all'indirizzo di base del servizio. È possibile modificare questo indirizzo impostando l'attributo httpHelpPageUrl. È inoltre possibile rendere l'operazione protetta utilizzando HTTPS anziché HTTP.

Gli attributi httpHelpPageBinding e httpHelpPageBinding facoltativi consentono di configurare le associazioni utilizzate per accedere alla pagina Web del servizio. Se non vengono specificati, per l'accesso alla pagina della Guida del servizio verranno utilizzate le associazioni predefinite (HttpTransportBindingElement per HTTP e HttpsTransportBindingElement per HTTPS) a seconda dei casi. Si noti che non è possibile utilizzare questi attributi con le associazioni WCF incorporate. Verranno supportate sole le associazioni con elementi di associazione interni che supportano System.ServiceModel.Channels.IReplyChannel. La proprietà System.ServiceModel.Channels.MessageVersion dell'associazione deve inoltre essere System.ServiceModel.Channels.MessageVersion.None.

Vedere anche

Riferimento

ServiceDebugElement
ServiceDebugBehavior

Altre risorse

Specifying and Handling Faults in Contracts and Services
Handling Exceptions and Faults
Service Debug Behavior