Compartir vía


ServiceDebugBehavior Clase

Definición

Habilita las características de depuración y ayuda para un servicio de 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

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

<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

Use las ServiceDebugBehavior propiedades de un archivo de configuración o mediante programación para habilitar el flujo de información de excepción administrada al cliente con fines de depuración, así como la publicación de archivos de información HTML para los usuarios que exploran el servicio en exploradores web.

Establezca la IncludeExceptionDetailInFaults propiedad true en para indicar a WCF que devuelva información de excepciones administradas en errores soap a los clientes con fines de depuración.

Precaución

Devolver información de excepciones administradas a los clientes puede ser un riesgo de seguridad porque los detalles de la excepción exponen información sobre la implementación del servicio interno que podrían usar los clientes no autorizados. Además, aunque las ServiceDebugBehavior propiedades también se pueden establecer mediante programación, puede ser fácil olvidarse de deshabilitar al implementar IncludeExceptionDetailInFaults .

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

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

  • Solo lo hace 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, vea Especificación y control de errores en contratos y servicios.

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

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

Para habilitar o deshabilitar una de las ServiceDebugBehavior características 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 <los elementos de punto de conexión> ; 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 punto 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 específico, vea la sección Ejemplo.

Constructores

Nombre Description
ServiceDebugBehavior()

Inicializa una nueva instancia de la clase ServiceDebugBehavior.

Propiedades

Nombre Description
HttpHelpPageBinding

Obtiene o establece el acceso de alto nivel a 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 HttpHelpPageUrl propiedad .

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 a 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 HttpsHelpPageUrl propiedad .

HttpsHelpPageUrl

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

IncludeExceptionDetailInFaults

Obtiene o establece un valor que especifica si se debe incluir información de excepción administrada en el detalle de los errores soap devueltos al cliente con fines de depuración.

Métodos

Nombre Description
Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
GetHashCode()

Actúa como función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

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

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

IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase)

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

IServiceBehavior.Validate(ServiceDescription, ServiceHostBase)

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

Se aplica a