ServiceDebugBehavior Clase

Definición

Habilita características de depuración y de información de Ayuda para un servicio 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
Herencia
ServiceDebugBehavior
Implementaciones

Ejemplos

El ejemplo de código siguiente muestra cómo utilizar un archivo de configuración para habilitar la característica de página de ayuda HTML y devolver información de excepción dentro de un error SOAP al cliente para la depuración, además de habilitar la compatibilidad de los metadatos. Este archivo de configuración muestra los siguientes pasos básicos para agregar compatibilidad con las características de ServiceDebugBehavior:

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

Comentarios

Utilice las propiedades ServiceDebugBehavior desde un archivo de configuración o mediante programación para 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.

Establezca la IncludeExceptionDetailInFaults propiedad true en para indicar a WCF que devuelva información de excepción administrada en errores SOAP a los clientes con fines de depuración.

Precaució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. Además, aunque también se pueden establecer las propiedades ServiceDebugBehavior mediante programación, puede ser fácil olvidarse de deshabilitar IncludeExceptionDetailInFaults en la implementación.

Debido a los problemas de seguridad implicados, se recomienda encarecidamente que:

  • Utilice un archivo de configuración de la aplicación para establecer el valor de la propiedad IncludeExceptionDetailInFaults en true.

  • Hágalo solamente en escenarios de depuración controlados.

Para obtener más información sobre los problemas de seguridad relacionados con la información de excepción administrada, consulte Especificación y control de errores en contratos y servicios.

Las propiedades HttpHelpPageEnabled y HttpsHelpPageEnabled indican al servicio que publique los archivos de ayuda HTML cuando el servicio se ve mediante explorador HTML.

Las propiedades HttpHelpPageUrl y HttpsHelpPageUrl controlan la ubicación de la página de ayuda de HTML que se ve.

Para habilitar o deshabilitar una de las características ServiceDebugBehavior mediante un archivo de configuración:

  1. Agregue un behaviorConfiguration atributo al elemento de servicio> para el< servicio WCF. Los comportamientos de los puntos de conexión se configuran en <endpoint> elementos; los comportamientos de servicio en <los elementos de servicio> .

  2. Agregue o cree una <sección serviceBehaviors> y agregue un <elemento de comportamiento> con el nombre que coincida con el valor de atributo del behaviorConfiguration paso 1. Los comportamientos de los puntos de conexión se configuran mediante un <elemento endpointBehaviors> ; los comportamientos de servicio se configuran mediante un <elemento serviceBehaviors> .

  3. Agregue un <elemento serviceDebug> al elemento de comportamiento> del< paso 2 y habilite o deshabilite las distintas propiedades adecuadas para su escenario.

Para obtener un ejemplo concreto, consulte la sección Ejemplo.

Constructores

ServiceDebugBehavior()

Inicializa una nueva instancia de la clase ServiceDebugBehavior.

Propiedades

HttpHelpPageBinding

Obtiene o establece el acceso de alto nivel en la definición de un enlace.

HttpHelpPageEnabled

Obtiene o establece un valor que controla si Windows Communication Foundation (WCF) publica una página de ayuda HTML en la dirección controlada por la propiedad HttpHelpPageUrl.

HttpHelpPageUrl

Obtiene o establece la ubicación en la que se publica el archivo de ayuda HTML.

HttpsHelpPageBinding

Obtiene o establece el acceso de alto nivel en la definición de un enlace.

HttpsHelpPageEnabled

Obtiene o establece un valor que especifica si Windows Communication Foundation (WCF) devuelve un archivo de ayuda HTML a través de HTTPS en la dirección controlada por la propiedad HttpsHelpPageUrl.

HttpsHelpPageUrl

Obtiene o establece la ubicación en la que un archivo HTML se publica para la recuperación mediante HTTPS.

IncludeExceptionDetailInFaults

Obtiene o establece un valor que especifica si se debe incluir la información de excepción administrada en el detalle de errores SOAP devueltos al cliente para la depuración.

Métodos

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

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

Implementa el método AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) para admitir el comportamiento.

IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase)

Implementa el método ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) para admitir el comportamiento.

IServiceBehavior.Validate(ServiceDescription, ServiceHostBase)

Implementa el método Validate(ServiceDescription, ServiceHostBase) para admitir el comportamiento.

Se aplica a