ServiceDebugBehavior Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee kunt u foutopsporing en help-informatiefuncties voor een WCF-service (Windows Communication Foundation) inschakelen.
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
- Overname
-
ServiceDebugBehavior
- Implementeringen
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u een configuratiebestand gebruikt om de html-helppaginafunctie in te schakelen en uitzonderingsinformatie in een SOAP-fout terug te sturen naar de client voor foutopsporing, naast het inschakelen van ondersteuning voor metagegevens. Dit configuratiebestand bevat de volgende basisstappen voor het toevoegen van ondersteuning voor de ServiceDebugBehavior functies:
Omdat het ServiceDebugBehavior type een System.ServiceModel.Description.IServiceBehavior implementatie is, heeft het <service-element dat het servicetype> vertegenwoordigt een gedragsconfiguratie-id van
behaviorConfiguration="metadataAndDebug".Omdat het ServiceDebugBehavior type een System.ServiceModel.Description.IServiceBehavior implementatie is, wordt een <gedragselement> toegevoegd aan een <serviceBehaviors-sectie> . Stel het
namekenmerk van het <gedragselement> in waarvan de waarde de id is van hetbehaviorConfigurationkenmerk van het <service-element> . In dit geval is de waardemetadataAndDebug.Voeg een <serviceDebug-element> toe met de verschillende kenmerken die zijn ingesteld op de gewenste configuratie. In dit geval worden de
httpHelpPageEnabledenincludeExceptionDetailInFaultskenmerkwaarden ingesteld optrue.
<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>
Opmerkingen
Gebruik de ServiceDebugBehavior eigenschappen van een configuratiebestand of programmatisch om de stroom van beheerde uitzonderingsgegevens naar de client in te schakelen voor foutopsporingsdoeleinden, evenals de publicatie van HTML-informatiebestanden voor gebruikers die door de service bladeren in webbrowsers.
Stel de IncludeExceptionDetailInFaults eigenschap in om WCF opdracht te true geven om beheerde uitzonderingsinformatie in SOAP-fouten te retourneren aan clients voor foutopsporingsdoeleinden.
Caution
Het retourneren van beheerde uitzonderingsinformatie aan clients kan een beveiligingsrisico zijn, omdat met uitzonderingsdetails informatie wordt weergegeven over de interne service-implementatie die kan worden gebruikt door onbevoegde clients. Hoewel de ServiceDebugBehavior eigenschappen ook programmatisch kunnen worden ingesteld, kan het gemakkelijk zijn om IncludeExceptionDetailInFaults te vergeten uit te schakelen bij het implementeren.
Vanwege de betrokken beveiligingsproblemen wordt ten zeere aangeraden:
U gebruikt een toepassingsconfiguratiebestand om de waarde van de IncludeExceptionDetailInFaults eigenschap in te stellen op
true.U doet dit alleen in beheerde foutopsporingsscenario's.
Zie Fouten opgeven en afhandelen in contracten en services voor meer informatie over de beveiligingsproblemen met betrekking tot beheerde uitzonderingsinformatie.
De HttpHelpPageEnabled en HttpsHelpPageEnabled eigenschappen geven de service opdracht om HTML Help-bestanden te publiceren wanneer de service wordt bekeken met behulp van een HTML-browser.
De HttpHelpPageUrl en HttpsHelpPageUrl eigenschappen bepalen de locatie van de HTML-Help-pagina die wordt weergegeven.
Een van de ServiceDebugBehavior functies in- of uitschakelen met behulp van een configuratiebestand:
Voeg een
behaviorConfigurationkenmerk toe aan het <service-element> voor uw WCF-service. Eindpuntgedrag wordt geconfigureerd op <eindpuntelementen> ; servicegedrag op <service-elementen> .Voeg een <serviceBehaviors-sectie> toe aan of maak er een <gedragselement> aan toe met de naam die overeenkomt met de
behaviorConfigurationkenmerkwaarde uit stap 1. Eindpuntgedrag wordt geconfigureerd met behulp van een <endpointBehaviors-element> ; servicegedrag wordt geconfigureerd met behulp van een <serviceBehaviors-element> .Voeg een <serviceDebug-element> toe aan het <gedragselement> uit stap 2 en schakel de verschillende eigenschappen in of uit die geschikt zijn voor uw scenario.
Zie de sectie Voorbeeld voor een specifiek voorbeeld.
Constructors
| Name | Description |
|---|---|
| ServiceDebugBehavior() |
Initialiseert een nieuw exemplaar van de ServiceDebugBehavior klasse. |
Eigenschappen
| Name | Description |
|---|---|
| HttpHelpPageBinding |
Hiermee haalt u toegang op hoog niveau tot de definitie van een binding op of stelt u deze in. |
| HttpHelpPageEnabled |
Hiermee wordt een waarde opgehaald of ingesteld waarmee wordt bepaald of Windows Communication Foundation (WCF) een HTML-helppagina publiceert op het adres dat wordt beheerd door de eigenschap HttpHelpPageUrl. |
| HttpHelpPageUrl |
Hiermee haalt u de locatie op waarop het HTML-Help-bestand wordt gepubliceerd of stelt u deze in. |
| HttpsHelpPageBinding |
Hiermee haalt u toegang op hoog niveau tot de definitie van een binding op of stelt u deze in. |
| HttpsHelpPageEnabled |
Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of Windows Communication Foundation (WCF) een HTML-helpbestand retourneert via HTTPS op het adres dat wordt beheerd door de eigenschap HttpsHelpPageUrl. |
| HttpsHelpPageUrl |
Hiermee wordt de locatie opgehaald of ingesteld waarop een HTML-bestand wordt gepubliceerd voor het ophalen via HTTPS. |
| IncludeExceptionDetailInFaults |
Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of beheerde uitzonderingsgegevens moeten worden opgenomen in de details van SOAP-fouten die worden geretourneerd naar de client voor foutopsporing. |
Methoden
| Name | Description |
|---|---|
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| IServiceBehavior.AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) |
Implementeert de AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) methode ter ondersteuning van het gedrag. |
| IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) |
Implementeert de ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) methode ter ondersteuning van het gedrag. |
| IServiceBehavior.Validate(ServiceDescription, ServiceHostBase) |
Implementeert de Validate(ServiceDescription, ServiceHostBase) methode ter ondersteuning van het gedrag. |