Condividi tramite


<debugServizio>

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

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

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

Attributi ed elementi

Attributi

Attributo Descrizione

httpHelpPageBinding

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

httpHelpPageEnabled

Valore booleano che controlla se WCF pubblica una pagina della Guida HTML all'indirizzo specificato dall'attributo httpHelpPageUrl. L'impostazione predefinita è true.

È possibile impostare questa proprietà su false per disattivare 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 se all'attributo httpHelpPageUrl viene assegnato un indirizzo assoluto che non supporta lo schema del protocollo HTTP, qualsiasi altro scenario nel quale non viene soddisfatto nessuno dei criteri precedenti fa sì che non venga generata nessuna eccezione e non vi sia nessuna pagina della Guida HTML.

httpHelpPageUrl

URI che specifica l'URL relativo o assoluto basato su HTTPS del file della Guida HTML personalizzato che l'utente vede quando l'endpoint viene visualizzato 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 l'associazione da utilizzare quando HTTPS viene utilizzato per accedere alla pagina della Guida del servizio.

httpsHelpPageEnabled

Valore booleano che controlla se WCF pubblica la pagina della Guida HTML all'indirizzo specificato dall'attributo httpsHelpPageUrl. L'impostazione predefinita è true.

È possibile impostare questa proprietà su false per disattivare 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 se all'attributo httpsHelpPageUrl viene assegnato un indirizzo assoluto che non supporta lo schema del protocollo HTTPS, qualsiasi altro scenario nel quale non viene soddisfatto nessuno dei criteri precedenti fa sì che non venga generata nessuna eccezione e non vi sia nessuna pagina della Guida HTML.

httpsHelpPageUrl

URI che specifica l'URL relativo o assoluto basato su HTTP del file della Guida HTML personalizzato che l'utente vede quando l'endpoint viene visualizzato 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 sugli errori SOAP restituiti al client a scopo di debug. L'impostazione predefinita è false.

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

Attenzione:
La restituzione ai client di informazioni sulle eccezioni gestite può costituire un rischio per la protezione. 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.

Attenzione:
La restituzione ai client delle informazioni sulle eccezioni gestite può rappresentare un rischio per la protezione, 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 protezione 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 protezione correlati alle eccezioni gestite, vedere Specifying and Handling Faults in Contracts and Services. Per un esempio di codice, vedere Service Debug Behavior.

Per attivare o disattivare 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. Inoltre, la proprietà System.ServiceModel.Channels.MessageVersion dell'associazione deve essere System.ServiceModel.Channels.MessageVersion.None.

Vedere anche

Riferimenti

ServiceDebugElement
ServiceDebugBehavior

Altre risorse

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