<serviceDebug>

Especifica las características de depuración y de información de ayuda para un servicio Windows Communication Foundation (WCF).

<<system.serviceModel>>
  <comportamientos>
    <serviceBehaviors>
      Elemento <behavior> de <serviceBehaviors>
        <serviceDebug>

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

Atributos y elementos

Atributos

Atributo Descripción

httpHelpPageBinding

Valor de cadena que especifica el enlace que se va a utilizar cuando se use HTTP para tener acceso a la página de ayuda del servicio.

httpHelpPageEnabled

Un valor booleano que controla si WCF publica una página de ayuda HTML en la dirección especificada por el atributo httpHelpPageUrl. El valor predeterminado es true.

Puede establecer esta propiedad en false para deshabilitar la publicación de una página de ayuda HTML visible en exploradores HTML.

Para asegurarse de que la página de ayuda HTML se publica en la ubicación controlada por el atributo httpHelpPageUrl, debe establecer este atributo en true. Además, se debe cumplir una de las condiciones siguientes:

  • El atributo httpHelpPageUrl es una dirección absoluta que admite el esquema del protocolo HTTP.
  • Hay una dirección base para el servicio que admite el esquema del protocolo HTTP.

Aunque se inicie una excepción si una dirección absoluta que no admite el esquema del protocolo HTTP está asignada al atributo httpHelpPageUrl, cualquier otro escenario en el que ninguno de los criterios anteriores se cumpla tiene como resultado ninguna excepción y ninguna página de ayuda HTML.

httpHelpPageUrl

Un URI que especifica la dirección URL basada en HTTP relativa o absoluta del archivo de ayuda HTML personalizado que el usuario ve cuando el extremo se ve mediante un explorador HTML.

Puede utilizar este atributo para habilitar el uso de un archivo de ayuda HTML personalizado que se devuelve de una solicitud Http/Get, por ejemplo, de un explorador HTML. La ubicación del archivo de ayuda HTML se resuelve como sigue.

  1. Si el valor de este atributo es una dirección relativa, la ubicación del archivo de ayuda HTML es el valor de la dirección base del servicio que admite solicitudes HTTP, más este valor de propiedad.
  2. Si el valor de este atributo es una dirección absoluta y admite solicitudes HTTP, la ubicación del archivo de ayuda HTML es el valor de esta propiedad.
  3. Si el valor de este atributo es absoluto pero no admite solicitudes HTTP, se inicia una excepción.

Este atributo sólo es válido cuando el atributo httpHelpPageEnabled es true.

httpsHelpPageBinding

Valor de cadena que especifica el enlace que se va a utilizar cuando se use HTTPS para tener acceso a la página de ayuda del servicio.

httpsHelpPageEnabled

Un valor booleano que controla si WCF publica una página de ayuda HTML en la dirección especificada por el atributo httpsHelpPageUrl. El valor predeterminado es true.

Puede establecer esta propiedad en false para deshabilitar la publicación de una página de ayuda HTML visible en exploradores HTML.

Para asegurarse de que la página de ayuda HTML se publica en la ubicación controlada por el atributo httpsHelpPageUrl, debe establecer este atributo en true. Además, se debe cumplir una de las condiciones siguientes:

  • El atributo httpsHelpPageUrl es una dirección absoluta que admite el esquema de protocolo HTTPS.
  • Hay una dirección base para el servicio que admite el esquema de protocolo HTTP.

Aunque se inicie una excepción si una dirección absoluta que no admite el esquema de protocolo HTTPS está asignada al atributo httpsHelpPageUrl, cualquier otro escenario en el que ninguno de los criterios anteriores se cumple tiene como resultado ninguna excepción y ninguna página de ayuda HTML.

httpsHelpPageUrl

Un URI que especifica la dirección URL basada en HTTPS relativa o absoluta del archivo de ayuda HTML personalizado que el usuario ve cuando el extremo se ve mediante un explorador HTML.

Puede utilizar este atributo para habilitar el uso de un archivo de ayuda HTML personalizado que se devuelve de una solicitud HTTPS/Get, por ejemplo, de un explorador HTML. La ubicación del archivo de ayuda HTML se resuelve como sigue:

  • Si el valor de esta propiedad es una dirección relativa, la ubicación del archivo de ayuda HTML es el valor de la dirección base del servicio que admite solicitudes HTTPS, más este valor de propiedad.
  • Si el valor de esta propiedad es una dirección absoluta y admite solicitudes HTTPS, la ubicación del archivo de ayuda HTML es el valor de esta propiedad.
  • Si el valor de esta propiedad es absoluto pero no admite solicitudes HTTPS, se inicia una excepción.

Este atributo sólo es válido cuando el atributo httpHelpPageEnabled es true.

includeExceptionDetailInFaults

Un valor que especifica si incluir la información de excepción administrada en el detalle de errores SOAP devueltos al cliente para su depuración. El valor predeterminado es false.

Si se establece el atributo en true, puede permitir el flujo de información de excepción administrada al cliente para propósitos de depuración, así como la publicación de archivos de información HTML para usuarios que examinen el servicio en exploradores Web.

ms788993.Caution(es-es,VS.90).gifPrecaución:
Devolver información de excepción administrada a los clientes puede ser un riesgo para la seguridad. Esto es porque los detalles de excepción exponen información acerca de la implementación de servicio interna que podría ser usada por clientes no autorizados.

Elementos secundarios

Ninguno.

Elementos primarios

Elemento Descripción

<behavior> de <endpointBehaviors>

Especifica el comportamiento de un elemento.

Comentarios

Establecer includeExceptionDetailInFaults como true permite al servicio devolver cualquier excepción producida por el código de aplicación aun cuando la excepción no se declare mediante FaultContractAttribute. Este valor es útil al depurar los casos donde el servidor produce una excepción inesperada. Al usar este atributo, se devuelve un formulario serializado de la excepción desconocida y usted puede examinar más detalles de la excepción.

ms788993.Caution(es-es,VS.90).gifPrecaución:
Devolver la información de excepción administrada a los clientes puede suponer un riesgo para la seguridad porque los datos de la excepción exponen información sobre la implementación de servicio interna que los clientes desautorizados podrían utilizar. Debido a los problemas de seguridad implicados, se recomienda encarecidamente que sólo realice este procedimiento en escenarios de depuración controlados. Debería establecer includeExceptionDetailInFaults en false al implementar su aplicación.

Para obtener información sobre los temas de seguridad relacionados con la excepción administrada, vea Specifying and Handling Faults in Contracts and Services. Para obtener un ejemplo de código, vea Service Debug Behavior.

También puede establecer httpsHelpPageEnabled y httpsHelpPageUrl para habilitar o deshabilitar la página de ayuda. Cada servicio puede exponer opcionalmente una página de ayuda que contiene información sobre el servicio que incluye el extremo para obtener WSDL para el servicio. Esto puede estar habilitado estableciendo httpHelpPageEnabled como true. Esto permite devolver la página de ayuda a una solicitud GET en la dirección base del servicio. Puede cambiar esta dirección estableciendo el atributo httpHelpPageUrl. Además, puede hacerlo de manera segura utilizando HTTPS en lugar de HTTP.

Los atributos opcionales httpHelpPageBinding y httpHelpPageBinding le permiten configurar los enlaces utilizados para tener acceso a la página web del servicio. Si no se especifican, los enlaces predeterminados (HttpTransportBindingElement, en el caso de HTTP y HttpsTransportBindingElement, en el caso de HTTPS) se utilizan según corresponda para el acceso de página de ayuda del servicio. Observe que no puede utilizar estos atributos con los enlaces WCF integrados. Sólo se admitirán los enlaces con elementos de enlace internos que admiten System.ServiceModel.Channels.IReplyChannel. Además, la propiedad System.ServiceModel.Channels.MessageVersion del enlace debe ser System.ServiceModel.Channels.MessageVersion.None.

Consulte también

Referencia

ServiceDebugElement
ServiceDebugBehavior

Otros recursos

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