DispatchRuntime Klas

Definitie

Geeft eigenschappen weer die kunnen worden gebruikt om het standaardservicegedrag te wijzigen en aangepaste objecten toe te voegen die kunnen wijzigen hoe binnenkomende berichten worden getransformeerd in objecten en verzonden naar bewerkingen. Deze klasse kan niet worden overgenomen.

public ref class DispatchRuntime sealed
public sealed class DispatchRuntime
type DispatchRuntime = class
Public NotInheritable Class DispatchRuntime
Overname
DispatchRuntime

Opmerkingen

Gebruik de DispatchRuntime klasse om het standaardgedrag van een service of afzonderlijk eindpunt te wijzigen of om objecten in te voegen die aangepaste wijzigingen in een of beide van de volgende serviceprocessen implementeren:

  1. De transformatie van binnenkomende berichten in objecten en het vrijgeven van deze objecten als methode-aanroepen op een serviceobject.

  2. De transformatie van objecten die zijn ontvangen van de reactie op een servicebewerking tot uitgaande berichten.

In Windows Communication Foundation (WCF) zijn de kanaal- en eindpuntverzenders de serviceonderdelen die verantwoordelijk zijn voor het accepteren van nieuwe kanalen, het ontvangen van berichten, het verzenden en aanroepen van methoden en het verwerken van reacties. Elk eindpunt dat door een ServiceHost object wordt weergegeven, heeft één eindpuntverzender en een bijbehorende kanaalverzender. Daarnaast heeft elke client die deelneemt aan duplexcommunicatie ook een eindpuntverzender en kanaalverzender voor elk callback-eindpunt.

Hiermee DispatchRuntime kunt u het kanaal of de eindpunt-dispatcher voor alle berichten in een bepaald contract onderscheppen en uitbreiden, zelfs wanneer een bericht niet wordt herkend. Wanneer een bericht binnenkomt dat niet overeenkomt met berichten die in het contract zijn aangegeven, wordt het verzonden naar de bewerking die door de UnhandledDispatchOperation eigenschap is geretourneerd. Als u alle berichten voor een bepaalde bewerking wilt onderscheppen of uitbreiden, raadpleegt u de DispatchOperation klasse.

Er zijn vier hoofdgebieden van de uitbreidbaarheid van de dispatcher die door de DispatchRuntime klasse worden weergegeven:

  1. Verzendonderdelen gebruiken de eigenschappen van de DispatchRuntime en de gekoppelde kanaal-dispatcher die door de ChannelDispatcher eigenschap worden geretourneerd om aan te passen hoe de kanaaldispatcher kanalen accepteert en sluit. Deze categorie bevat de ChannelInitializers en InputSessionShutdownHandlers eigenschappen.

  2. Berichtonderdelen worden aangepast voor elk verwerkt bericht. Deze categorie bevat de MessageInspectorseigenschappen , OperationSelectoren Operationsde ErrorHandlers eigenschappen.

  3. Instantiecomponenten passen het maken, de levenscyclus en het verwijderen van instanties van het servicetype aan. Zie de eigenschap InstanceContextMode voor meer informatie over de levensduur van serviceobjecten. Deze categorie bevat de InstanceContextInitializers en de InstanceProvider eigenschappen.

  4. Beveiligingsgerelateerde onderdelen kunnen de volgende eigenschappen gebruiken:

Normaal gesproken worden aangepaste extensieobjecten toegewezen aan een DispatchRuntime eigenschap of ingevoegd in een verzameling door een servicegedrag (een object dat implementeert IServiceBehavior), een contractgedrag (een object dat implementeert IContractBehavior) of een eindpuntgedrag (een object dat implementeert IEndpointBehavior). Vervolgens wordt het installatiegedragsobject toegevoegd aan de juiste verzameling gedrag via een programma of door een aangepast BehaviorExtensionElement object te implementeren om het gedrag in te voegen met behulp van een toepassingsconfiguratiebestand.

Eigenschappen

Name Description
AutomaticInputSessionShutdown

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of de service een invoersessie sluit wanneer de client een uitvoersessie sluit.

CallbackClientRuntime

Hiermee haalt u het ClientRuntime-object op dat het installatiepunt vertegenwoordigt voor extensies naar Windows Communication Foundation (WCF) voor uitgaande aanroepen naar een dubbelzijdig callback-eindpunt.

ChannelDispatcher

Hiermee haalt u het ChannelDispatcher runtime-object voor deze verzending op.

ConcurrencyMode

Hiermee haalt u op of stelt u in of een exemplaar van een service berichten sequentieel of gelijktijdig verwerkt.

EndpointDispatcher

Hiermee haalt u de EndpointDispatcher voor deze dispatch-runtime op.

EnsureOrderedDispatch

Hiermee wordt een waarde opgehaald die aangeeft of berichten moeten worden verzonden in de volgorde waarin ze zijn verzonden.

ExternalAuthorizationPolicies

Hiermee haalt u het externe autorisatiebeleid op waarmee een set regels wordt gedefinieerd voor het autoriseren van een gebruiker, op basis van een set claims.

IgnoreTransactionMessageProperty

Hiermee haalt u op of stelt u in of de vraag of u de TransactionMessageProperty.

ImpersonateCallerForAllOperations

Hiermee wordt een waarde opgehaald of ingesteld waarmee wordt bepaald of de service probeert te imiteren met behulp van de referenties die zijn opgegeven door het binnenkomende bericht.

ImpersonateOnSerializingReply

Hiermee wordt een waarde opgehaald die aangeeft of imitatie wordt gebruikt voor het serialiseren van antwoordbewerkingen.

InputSessionShutdownHandlers

Hiermee haalt u een verzameling IInputSessionShutdown objecten op die kunnen worden gebruikt om een aangepaste handler toe te voegen om te bepalen hoe invoersessies worden gesloten.

InstanceContextInitializers

Hiermee haalt u een verzameling IInstanceContextInitializer objecten op die kunnen worden gebruikt om een InstanceContext object te inspecteren of te wijzigen wanneer het voor het eerst wordt gemaakt.

InstanceContextProvider

Hiermee haalt u het IInstanceContextProvider te gebruiken bestand op of stelt u deze DispatchRuntimein.

InstanceProvider

Hiermee wordt een IInstanceProvider object opgehaald of ingesteld dat u kunt gebruiken om het maken en vernietigen van serviceobjecten te beheren.

MessageAuthenticationAuditLevel

Hiermee wordt een waarde opgehaald of ingesteld waarmee wordt aangegeven of geslaagde berichtverificatie-gebeurtenissen naar het gebeurtenislogboek worden geschreven dat is opgegeven door SecurityAuditLogLocation.

MessageInspectors

Hiermee haalt u een verzameling IDispatchMessageInspector objecten op die kunnen worden gebruikt om een aangepaste berichtcontrole toe te voegen voor alle binnenkomende en uitgaande berichten in het eindpunt.

Operations

Hiermee haalt u een verzameling DispatchOperation objecten op die kunnen worden gebruikt om het uitvoeringsgedrag van een bepaalde bewerking te beheren.

OperationSelector

Hiermee wordt het IDispatchOperationSelector object opgehaald of ingesteld waarmee de selectie van een bestemming DispatchOperation voor een bepaald bericht wordt bepaald.

PreserveMessage

Hiermee wordt opgehaald of ingesteld of het bericht behouden blijft.

PrincipalPermissionMode

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft hoe de CurrentPrincipal eigenschap wordt ingesteld.

ReleaseServiceInstanceOnTransactionComplete

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of het serviceobject wordt gerecycled nadat de transactie is voltooid.

RoleProvider

Hiermee haalt u de aangepaste RoleProvider op die wordt gebruikt door de DispatchRuntime.

SecurityAuditLogLocation

Hiermee haalt u de locatie van het auditlogboek op of stelt u deze in.

ServiceAuthenticationManager

Hiermee wordt het object opgehaald of ingesteld waarmee een verificatieproces voor servicebewerkingen wordt beheerd.

ServiceAuthorizationAuditLevel

Hiermee wordt een waarde opgehaald of ingesteld waarmee wordt bepaald welke serviceautorisatiegebeurtenissen worden gecontroleerd.

ServiceAuthorizationManager

Hiermee wordt de ServiceAuthorizationManager autorisatiecontrole voor de DispatchRuntime.

SingletonInstanceContext

Haalt de singleton IInstanceContextProvider op of stelt deze in voor gebruik door de DispatchRuntime.

SuppressAuditFailure

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of er niet-kritieke uitzonderingen moeten worden onderdrukt die optreden tijdens het logboekregistratieproces.

SynchronizationContext

Hiermee haalt u de synchronisatiecontext op die wordt gebruikt om de servicebewerkingen aan te roepen of stelt u deze in.

TransactionAutoCompleteOnSessionClose

Hiermee wordt een waarde opgehaald of ingesteld waarmee wordt aangegeven of de huidige transactie automatisch moet worden voltooid wanneer de sessie wordt gesloten.

Type

Hiermee haalt u het contracttype op of stelt u dit in.

UnhandledDispatchOperation

Hiermee wordt de bewerking opgehaald of ingesteld waarop niet-herkende berichten worden verzonden.

ValidateMustUnderstand

Hiermee haalt of stelt u de waarde van ValidateMustUnderstand.

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)

Van toepassing op