DispatchRuntime DispatchRuntime DispatchRuntime DispatchRuntime Class

Définition

Expose des propriétés qui peuvent être utilisées pour modifier le comportement de service par défaut et pour joindre des objets personnalisés qui peuvent modifier la manière dont les messages entrants sont transformés en objets et distribués aux opérations.Exposes properties that can be used to modify default service behavior as well as attach custom objects that can modify how incoming messages are transformed into objects and dispatched to operations. Cette classe ne peut pas être héritée.This class cannot be inherited.

public ref class DispatchRuntime sealed
public sealed class DispatchRuntime
type DispatchRuntime = class
Public NotInheritable Class DispatchRuntime
Héritage
DispatchRuntimeDispatchRuntimeDispatchRuntimeDispatchRuntime

Remarques

Utilisez la classe DispatchRuntime pour modifier le comportement par défaut d'un service ou d'un point de terminaison individuel, ou pour insérer des objets implémentant des modifications personnalisées dans l'un ou les deux processus de service suivants :Use the DispatchRuntime class either to modify the default behavior of a service or individual endpoint, or to insert objects that implement custom modifications to one or both of the following service processes:

  1. La transformation de messages entrants dans les objets et la diffusion de ces objets comme appels de méthode sur un objet de service.The transformation of incoming messages into objects and releasing those objects as method invocations on a service object.

  2. La transformation d'objets reçu de la réponse à un appel d'opération de service dans des messages sortants.The transformation of objects received from the response to a service operation invocation into outbound messages.

Dans Windows Communication Foundation (WCF), les répartiteurs de canal et de point de terminaison sont les composants de service chargés d’accepter de nouveaux canaux, de recevoir des messages, la distribution et l’appel de méthode et le traitement des réponses.In Windows Communication Foundation (WCF), the channel and endpoint dispatchers are the service components responsible for accepting new channels, receiving messages, method dispatch and invocation, and response processing. Chaque point de terminaison exposé par un objet ServiceHost possède un répartiteur de point de terminaison et un répartiteur de canal associé ; en outre, chaque client qui participe à la communication duplex possède également un répartiteur de point de terminaison et un répartiteur de canal pour chaque point de terminaison de rappel.Each endpoint exposed by a ServiceHost object has one endpoint dispatcher and an associated channel dispatcher; in addition, each client that participates in duplex communication also has an endpoint dispatcher and channel dispatcher for each callback endpoint.

DispatchRuntime vous permet d'intercepter et d'étendre le canal ou le répartiteur de point de terminaison pour tous les messages à travers un contrat particulier, même lorsqu'un message n'est pas reconnu.The DispatchRuntime enables you to intercept and extend the channel or endpoint dispatcher for all messages across a particular contract, even when a message is not recognized. Lorsqu'un message arrive et qu'il ne correspond à aucun message déclaré dans le contrat, il est distribué à l'opération retournée par la propriété UnhandledDispatchOperation.When a message arrives that does not match any messages declared in the contract it is dispatched to the operation that was returned by the UnhandledDispatchOperation property. Pour intercepter ou étendre à travers tous les messages une opération particulière, consultez la classe DispatchOperation.To intercept or extend across all messages for a particular operation, see the DispatchOperation class.

Il existe quatre domaines principaux d'extensibilité de répartiteur exposés par la classe DispatchRuntime :There are four main areas of dispatcher extensibility exposed by the DispatchRuntime class:

  1. Les composants du répartiteur utilisent les propriétés de DispatchRuntime et celles du répartiteur de canal associé retournées par la propriété ChannelDispatcher pour personnaliser la façon dont le répartiteur de canal accepte et ferme des canaux.Dispatch components use the properties of the DispatchRuntime and those of the associated channel dispatcher returned by the ChannelDispatcher property to customize how the channel dispatcher accepts and closes channels. Cette catégorie inclut les propriétés ChannelInitializers et InputSessionShutdownHandlers.This category includes the ChannelInitializers and InputSessionShutdownHandlers properties.

  2. Les composants de message sont personnalisés pour chaque message traité.Message components are customized for each message processed. Cette catégorie inclut les propriétés MessageInspectors, OperationSelector, Operations et ErrorHandlers.This category includes the MessageInspectors, OperationSelector, Operations, and the ErrorHandlers properties.

  3. Les composants d'instance personnalisent la création, la durée de vie et la suppression des instances du type de service.Instance components customize the creation, lifetime, and disposal of instances of the service type. Pour plus d'informations sur la durée de vie de l'objet de service, consultez la propriété InstanceContextMode.For more information about service object lifetimes, see the InstanceContextMode property. Cette catégorie inclut les propriétés InstanceContextInitializers et InstanceProvider.This category includes the InstanceContextInitializers and the InstanceProvider properties.

  4. Les composants relatifs à la sécurité peuvent utiliser les propriétés suivantes :Security-related components can use the following properties:

Généralement, des objets d'extension personnalisés sont affectés à une propriété DispatchRuntime ou insérés dans une collection par un comportement de service (un objet qui implémente IServiceBehavior), un comportement de contrat (un objet qui implémente IContractBehavior) ou un comportement de point de terminaison (un objet qui implémente IEndpointBehavior).Typically custom extension objects are assigned to a DispatchRuntime property or inserted into a collection by a service behavior (an object that implements IServiceBehavior), a contract behavior (an object that implements IContractBehavior), or an endpoint behavior (an object that implements IEndpointBehavior). Puis, l’objet de comportement installé est ajouté à la collection appropriée de comportements soit via le programme soit en implémentant un objet BehaviorExtensionElement personnalisé pour que le comportement soit inséré à l’aide d’un fichier de configuration d’application.Then the installing behavior object is added to the appropriate collection of behaviors either programmatically or by implementing a custom BehaviorExtensionElement object to enable the behavior to be inserted using an application configuration file.

Propriétés

AutomaticInputSessionShutdown AutomaticInputSessionShutdown AutomaticInputSessionShutdown AutomaticInputSessionShutdown

Obtient ou définit une valeur qui spécifie si le service ferme une session d'entrée lorsque le client ferme une session de sortie.Gets or sets a value that specifies whether the service closes an input session when the client closes an output session.

CallbackClientRuntime CallbackClientRuntime CallbackClientRuntime CallbackClientRuntime

Obtient l’objet ClientRuntime qui représente le point d’installation des extensions de Windows Communication Foundation (WCF) pour les appels sortants vers un point de terminaison de rappel duplex.Gets the ClientRuntime object that represents the installation point for extensions to Windows Communication Foundation (WCF) for outbound calls to a duplex callback endpoint.

ChannelDispatcher ChannelDispatcher ChannelDispatcher ChannelDispatcher

Obtient ChannelDispatcher pour cet objet d'exécution de répartition.Gets the ChannelDispatcher for this dispatch run-time object.

ConcurrencyMode ConcurrencyMode ConcurrencyMode ConcurrencyMode

Obtient ou définit si une instance d'un service traite des messages séquentiellement ou concurremment.Gets or sets whether an instance of a service processes messages sequentially or concurrently.

EndpointDispatcher EndpointDispatcher EndpointDispatcher EndpointDispatcher

Obtient EndpointDispatcher pour cette exécution de répartition.Gets the EndpointDispatcher for this dispatch runtime.

EnsureOrderedDispatch EnsureOrderedDispatch EnsureOrderedDispatch EnsureOrderedDispatch

Obtient une valeur qui indique si les messages doivent être distribués dans l'ordre dans lequel ils ont été envoyés.Gets a value that indicates whether messages are to be dispatched in the order they were sent.

ExternalAuthorizationPolicies ExternalAuthorizationPolicies ExternalAuthorizationPolicies ExternalAuthorizationPolicies

Obtient ou définit les stratégies d'autorisation externes qui définissent un jeu de règles pour autoriser un utilisateur, en fonction d'un jeu de revendications.Gets or sets the external authorization policies that define a set of rules for authorizing a user, given a set of claims.

IgnoreTransactionMessageProperty IgnoreTransactionMessageProperty IgnoreTransactionMessageProperty IgnoreTransactionMessageProperty

Obtient ou définit s'il faut ignorer TransactionMessageProperty.Gets or sets whether to ignore the TransactionMessageProperty.

ImpersonateCallerForAllOperations ImpersonateCallerForAllOperations ImpersonateCallerForAllOperations ImpersonateCallerForAllOperations

Obtient ou définit la valeur qui contrôle si le service essaie d'emprunter l'identité à l'aide des informations d'identification fournies par le message entrant.Gets or sets a value that controls whether the service attempts to impersonate using the credentials provided by the incoming message.

ImpersonateOnSerializingReply ImpersonateOnSerializingReply ImpersonateOnSerializingReply ImpersonateOnSerializingReply

Obtient une valeur qui indique si l'emprunt d'identité est utilisé sur la sérialisation de l'opération de réponse.Gets a value that indicates whether impersonation is used on serializing reply operation.

InputSessionShutdownHandlers InputSessionShutdownHandlers InputSessionShutdownHandlers InputSessionShutdownHandlers

Obtient une collection des objets IInputSessionShutdown qui peuvent être utilisés pour ajouter un gestionnaire personnalisé pour contrôler la manière dont les sessions d’entrée sont fermées.Gets a collection of IInputSessionShutdown objects that can be used to add a custom handler to control how input sessions are closed.

InstanceContextInitializers InstanceContextInitializers InstanceContextInitializers InstanceContextInitializers

Obtient une collection d’objets IInstanceContextInitializer qui peuvent être utilisés pour inspecter ou modifier un objet InstanceContext lors de sa création initiale.Gets a collection of IInstanceContextInitializer objects that can be used to inspect or modify an InstanceContext object when it is first created.

InstanceContextProvider InstanceContextProvider InstanceContextProvider InstanceContextProvider

Obtient ou définit le IInstanceContextProvider devant être utilisé par DispatchRuntime.Gets or sets the IInstanceContextProvider to be used by the DispatchRuntime.

InstanceProvider InstanceProvider InstanceProvider InstanceProvider

Obtient ou définit un objet IInstanceProvider que vous pouvez utiliser pour contrôler la création et la destruction d'objets de service.Gets or sets an IInstanceProvider object that you can use to control the creation and destruction of service objects.

MessageAuthenticationAuditLevel MessageAuthenticationAuditLevel MessageAuthenticationAuditLevel MessageAuthenticationAuditLevel

Obtient ou définit une valeur qui spécifie si les événements d'authentification de message réussis sont écrits dans le journal des événements spécifié par SecurityAuditLogLocation.Gets or sets a value that specifies whether successful message authentication events are written to the event log specified by SecurityAuditLogLocation.

MessageInspectors MessageInspectors MessageInspectors MessageInspectors

Obtient une collection d’objets IDispatchMessageInspector qui peuvent être utilisés pour joindre un inspecteur de message personnalisé pour tous les messages entrants et sortants à travers le point de terminaison.Gets a collection of IDispatchMessageInspector objects that can be used to attach a custom message inspector for all incoming and outgoing messages across the endpoint.

Operations Operations Operations Operations

Obtient une collection d’objets DispatchOperation qui peuvent être utilisés pour contrôler le comportement d’exécution d’une opération particulière.Gets a collection of DispatchOperation objects that can be used to control the execution behavior of a particular operation.

OperationSelector OperationSelector OperationSelector OperationSelector

Obtient ou définit l'objet IDispatchOperationSelector qui contrôle la sélection d'une destination DispatchOperation pour un message particulier.Gets or sets the IDispatchOperationSelector object that controls the selection of a destination DispatchOperation for a particular message.

PreserveMessage PreserveMessage PreserveMessage PreserveMessage

Obtient ou définit si le message est conservé.Gets or sets whether the message is preserved.

PrincipalPermissionMode PrincipalPermissionMode PrincipalPermissionMode PrincipalPermissionMode

Obtient ou définit une valeur qui spécifie comment la propriété CurrentPrincipal est définie.Gets or sets a value that specifies how the CurrentPrincipal property is set.

ReleaseServiceInstanceOnTransactionComplete ReleaseServiceInstanceOnTransactionComplete ReleaseServiceInstanceOnTransactionComplete ReleaseServiceInstanceOnTransactionComplete

Obtient ou définit une valeur qui spécifie si l’objet de service est recyclé une fois que la transaction est correctement terminée.Gets or sets a value that specifies whether the service object is recycled after the transaction successfully completes.

RoleProvider RoleProvider RoleProvider RoleProvider

Obtient ou définit le RoleProvider personnalisé utilisé par DispatchRuntime.Gets or sets the custom RoleProvider that is used by the DispatchRuntime.

SecurityAuditLogLocation SecurityAuditLogLocation SecurityAuditLogLocation SecurityAuditLogLocation

Obtient ou définit l'emplacement du journal d'audit.Gets or sets the location of the audit log.

ServiceAuthenticationManager ServiceAuthenticationManager ServiceAuthenticationManager ServiceAuthenticationManager

Obtient ou définit l'objet qui gère un processus d'authentification pour les opérations de service.Gets or sets the object that manages an authentication process for service operations.

ServiceAuthorizationAuditLevel ServiceAuthorizationAuditLevel ServiceAuthorizationAuditLevel ServiceAuthorizationAuditLevel

Obtient ou définit une valeur qui contrôle quels événements d'autorisation de service sont vérifiés.Gets or sets a value that controls what service authorization events are audited.

ServiceAuthorizationManager ServiceAuthorizationManager ServiceAuthorizationManager ServiceAuthorizationManager

Obtient ServiceAuthorizationManager qui fournit la vérification d'autorisation pour DispatchRuntime.Gets the ServiceAuthorizationManager that provides authorization checking for the DispatchRuntime.

SingletonInstanceContext SingletonInstanceContext SingletonInstanceContext SingletonInstanceContext

Obtient ou définit le singleton IInstanceContextProvider devant être utilisé par DispatchRuntime.Gets or sets the singleton IInstanceContextProvider to be used by the DispatchRuntime.

SuppressAuditFailure SuppressAuditFailure SuppressAuditFailure SuppressAuditFailure

Obtient ou définit une valeur qui spécifie s'il faut supprimer des exceptions non critiques qui se produisent pendant le processus d'enregistrement.Gets or sets a value that specifies whether to suppress non-critical exceptions that occur during the logging process.

SynchronizationContext SynchronizationContext SynchronizationContext SynchronizationContext

Obtient ou définit le contexte de synchronisation utilisé pour appeler les opérations de service.Gets or sets the synchronization context that is used to invoke the service operations.

TransactionAutoCompleteOnSessionClose TransactionAutoCompleteOnSessionClose TransactionAutoCompleteOnSessionClose TransactionAutoCompleteOnSessionClose

Obtient ou définit une valeur qui spécifie si la transaction en cours doit être terminée automatiquement lors de la fermeture de la session.Gets or sets a value that specifies whether to automatically complete the current transaction when the session closes.

Type Type Type Type

Obtient ou définit le type de contrat.Gets or sets the contract type.

UnhandledDispatchOperation UnhandledDispatchOperation UnhandledDispatchOperation UnhandledDispatchOperation

Obtient ou définit l'opération à laquelle les messages non reconnus sont distribués.Gets or sets the operation to which unrecognized messages are dispatched.

ValidateMustUnderstand ValidateMustUnderstand ValidateMustUnderstand ValidateMustUnderstand

Obtient ou définit la valeur de ValidateMustUnderstand.Gets or sets the value of ValidateMustUnderstand.

Méthodes

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fait office de fonction de hachage par défaut.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Inherited from Object)

S’applique à