ServiceDebugBehavior Класс

Определение

Включает возможности отладки и справки для службы 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
Наследование
ServiceDebugBehavior
Реализации

Примеры

В следующем примере кода показано использование файла конфигурации для включения функций справочной HTML-страницы и возврата информации об исключении в ошибке SOAP клиенту в целях отладки, а также для включения функции поддержки метаданных. В файле конфигурации показаны следующие основные шаги по добавлению поддержки функциональных возможностей 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>

Комментарии

Рекомендуется использовать свойства ServiceDebugBehavior из файла конфигурации или программным способом, чтобы разрешить в целях отладки передачу клиенту потока информации по управляемым исключениям,а также публикацию HTML-файлов с информацией для пользователей, которые обращаются к службе при помощи веб-браузеров.

IncludeExceptionDetailInFaults Задайте для свойства true указание WCF возвращать сведения об управляемых исключениях в сбоях SOAP клиентам в целях отладки.

Внимание!

Возвращение клиенту сведений об управляемых исключениях может представлять риск с точки зрения безопасности, так как подробные данные об исключении содержат сведения о внутренней реализации службы, которые могут использоваться неавторизованными клиентами. Кроме того, хотя свойства ServiceDebugBehavior также могут настраиваться программно, IncludeExceptionDetailInFaults легко забыть отключить при развертывании.

Вследствие указанных проблем с безопасностью настоятельно рекомендуется делать следующее.

  • Файл конфигурации приложения может использоваться для присвоения свойству IncludeExceptionDetailInFaults значения true.

  • Это следует делать только в контролируемых сценариях отладки.

Дополнительные сведения о проблемах безопасности, связанных с сведениями об управляемых исключениях, см. в разделе "Указание и обработка сбоев в контрактах и службах".

Свойства HttpHelpPageEnabled и HttpsHelpPageEnabled отправляют службе инструкции по публикации HTML-файлов справки, если просмотр службы осуществляется с помощью HTML-браузера.

Свойства HttpHelpPageUrl и HttpsHelpPageUrl задают расположение просматриваемой справочной HTML-страницы.

Включение или отключение возможностей ServiceDebugBehavior с помощью файла конфигурации:

  1. behaviorConfiguration Добавьте атрибут в <элемент службы WCF>. Поведение конечных точек настраивается для <endpoint> элементов; поведение службы в <элементах службы> .

  2. Добавьте или создайте <раздел serviceBehaviors> и добавьте <в нее элемент поведения> с именем, соответствующим значению атрибута behaviorConfiguration из шага 1. Поведение конечных точек настраивается с помощью <элемента endpointBehaviors> . Поведение службы настраивается с помощью <элемента serviceBehaviors> .

  3. Добавьте элемент serviceDebug> в элемент поведения из шага 2 и включите или отключите различные свойства, соответствующие вашему сценарию.< ><

Конкретный пример см. в разделе «Пример».

Конструкторы

ServiceDebugBehavior()

Инициализирует новый экземпляр класса ServiceDebugBehavior.

Свойства

HttpHelpPageBinding

Возвращает или задает высокоуровневый доступ к определению привязки.

HttpHelpPageEnabled

Возвращает или задает значение, определяющее, публикует ли служба Windows Communication Foundation (WCF) справочную HTML-страницу по адресу, управляемому свойством HttpHelpPageUrl.

HttpHelpPageUrl

Возвращает или задает путь для публикации файлов справочной HTML-страницы.

HttpsHelpPageBinding

Возвращает или задает высокоуровневый доступ к определению привязки.

HttpsHelpPageEnabled

Возвращает или задает значение, указывающее, возвращает ли служба Windows Communication Foundation (WCF) HTML-файл справки по протоколу HTTPS по адресу, управляемому свойством HttpsHelpPageUrl.

HttpsHelpPageUrl

Возвращает или задает путь публикации файлов HTML для извлечения с помощью HTTPS.

IncludeExceptionDetailInFaults

Получает или задает значение, которое определяет, включать ли информацию по управляемым исключениям в подробную информацию об ошибках SOAP, которая возвращается клиенту для отладки.

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Явные реализации интерфейса

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

Реализует метод AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) для поддержки расширения функциональности.

IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase)

Реализует метод ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) для поддержки расширения функциональности.

IServiceBehavior.Validate(ServiceDescription, ServiceHostBase)

Реализует метод Validate(ServiceDescription, ServiceHostBase) для поддержки расширения функциональности.

Применяется к