ClientOperation Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Utilisé pour modifier ou étendre le comportement d'exécution d'une opération de contrat spécifique dans un objet client ou un objet de canal client. Cette classe ne peut pas être héritée.
public ref class ClientOperation sealed
public ref class ClientOperation sealed : System::ServiceModel::Dispatcher::ClientOperationCompatBase
public sealed class ClientOperation
public sealed class ClientOperation : System.ServiceModel.Dispatcher.ClientOperationCompatBase
type ClientOperation = class
type ClientOperation = class
inherit ClientOperationCompatBase
Public NotInheritable Class ClientOperation
Public NotInheritable Class ClientOperation
Inherits ClientOperationCompatBase
- Héritage
-
ClientOperation
- Héritage
Exemples
L'exemple de code suivant présente un System.ServiceModel.Description.IEndpointBehavior insérant un inspecteur de paramètre personnalisé dans chaque ClientOperation dans la propriété ClientRuntime.Operations.
#region IEndpointBehavior Members
public void AddBindingParameters(
ServiceEndpoint endpoint, BindingParameterCollection bindingParameters
) { return; }
public void ApplyClientBehavior(ServiceEndpoint endpoint, ClientRuntime clientRuntime)
{
clientRuntime.MessageInspectors.Add(new Inspector());
foreach (ClientOperation op in clientRuntime.Operations)
op.ParameterInspectors.Add(new Inspector());
}
public void ApplyDispatchBehavior(ServiceEndpoint endpoint, EndpointDispatcher endpointDispatcher)
{
endpointDispatcher.DispatchRuntime.MessageInspectors.Add(new Inspector());
foreach (DispatchOperation op in endpointDispatcher.DispatchRuntime.Operations)
op.ParameterInspectors.Add(new Inspector());
}
public void Validate(ServiceEndpoint endpoint){ return; }
#Region "IEndpointBehavior Members"
Public Sub AddBindingParameters(ByVal endpoint As ServiceEndpoint, ByVal bindingParameters _
As BindingParameterCollection) Implements IEndpointBehavior.AddBindingParameters
Return
End Sub
Public Sub ApplyClientBehavior(ByVal endpoint As ServiceEndpoint, ByVal clientRuntime As ClientRuntime) _
Implements IEndpointBehavior.ApplyClientBehavior
clientRuntime.MessageInspectors.Add(New Inspector())
For Each op As ClientOperation In clientRuntime.Operations
op.ParameterInspectors.Add(New Inspector())
Next op
End Sub
Public Sub ApplyDispatchBehavior(ByVal endpoint As ServiceEndpoint, ByVal endpointDispatcher As _
EndpointDispatcher) Implements IEndpointBehavior.ApplyDispatchBehavior
endpointDispatcher.DispatchRuntime.MessageInspectors.Add(New Inspector())
For Each op As DispatchOperation In endpointDispatcher.DispatchRuntime.Operations
op.ParameterInspectors.Add(New Inspector())
Next op
End Sub
Public Sub Validate(ByVal endpoint As ServiceEndpoint) Implements IEndpointBehavior.Validate
Return
End Sub
Remarques
La classe ClientOperation correspond à l’emplacement des modifications d’exécution du client et au point d’insertion des extensions personnalisées qui sont limitées à une seule opération de service. (Pour modifier le comportement d’exécution du client pour tous les messages d’un contrat, utilisez la ClientRuntime classe . )
Installez les modifications ClientOperation à l'aide d'un objet de comportement client personnalisé, soit de type IContractBehavior (pour rechercher une opération particulière à modifier), soit de type IOperationBehavior (qui peut être appliqué en créant un attribut personnalisé).
Utilisez la propriété Operations pour localiser l'objet ClientOperation qui représente une opération de service particulière.
Pour plus d’informations sur les clients et l’architecture cliente, consultez Accès aux services à l’aide d’un client WCF et architecture cliente WCF. Pour plus d’informations sur la personnalisation du runtime client, consultez Extension des clients. Pour plus d’informations sur l’utilisation des comportements, consultez Configuration et extension du runtime avec des comportements.
Les propriétés suivantes vous permettent d'insérer des objets personnalisés ou de modifier le comportement d'exécution du client :
La propriété Formatter permet d'insérer une implémentation IClientMessageFormatter personnalisée pour une opération ou de modifier le formateur actuel.
La propriété ParameterInspectors permet d'insérer une implémentation IParameterInspector personnalisée ou de modifier l'implémentation actuelle.
La propriété SerializeRequest permet de contrôler qui sérialise un message sortant.
La propriété DeserializeReply permet de contrôler qui désérialise un message entrant.
La propriété Action permet d'accéder à l'action WS-Addressing du message de demande et la propriété ReplyAction permet d'accéder à l'action du message de réponse.
Les propriétés BeginMethod et EndMethod permettent de spécifier les méthodes clientes qui sont associées à une opération asynchrone.
La propriété FaultContractInfos permet d'obtenir une collection de types spécifiés qui peuvent apparaître dans les erreurs SOAP comme type de détail.
Les propriétés IsInitiating et IsTerminating permettent respectivement de contrôler si une session est initiée ou détruite, lorsque l'opération est appelée.
La propriété IsOneWay permet de contrôler si le client attend une réponse avant de terminer l'appel.
La propriété Parent permet d'obtenir l'objet contenant ClientRuntime.
La propriété Name permet d'obtenir le nom de l'opération.
La propriété SyncMethod permet de contrôler la méthode mappée à l'opération.
Constructeurs
ClientOperation(ClientRuntime, String, String) |
Initialise une nouvelle instance de la classe ClientOperation à l'aide de l'ClientRuntime, du nom et des valeurs d'action spécifiés. |
ClientOperation(ClientRuntime, String, String, String) |
Initialise une nouvelle instance de la classe ClientOperation à l'aide de l'ClientRuntime, du nom, de l'action et des valeurs d'action de réponse. |
Propriétés
Action |
Obtient l'action de l'opération. |
BeginMethod |
Obtient ou définit la méthode associée à une opération asynchrone. |
ClientParameterInspectors |
Obtient une collection d'objets d'inspection de paramètre utilisés pour afficher ou modifier les paramètres avant ou à la suite d'un appel client. |
DeserializeReply |
Obtient ou définit une valeur qui indique si la valeur de propriété Formatter est utilisée pour désérialiser le message de réponse. |
EndMethod |
Obtient ou définit la méthode qui implémente la méthode End asynchrone pour l'opération. |
FaultContractInfos |
Obtient une collection d’objets FaultContractInfo qui représentent les erreurs SOAP spécifiées pour cette opération. |
Formatter |
Obtient ou définit le formateur qui sérialise les objets en messages et désérialise les messages en objets. |
IsInitiating |
Obtient ou définit une valeur qui indique si une session peut être démarrée par un message à cette opération. |
IsOneWay |
Obtient ou définit une valeur qui indique si l'opération est une opération unidirectionnelle. |
IsTerminating |
Obtient ou définit une valeur qui indique si cette opération est la dernière dans une session. |
Name |
Obtient le nom de l'opération. |
ParameterInspectors |
Obtient ou définit une collection d’objets IParameterInspector qui peuvent inspecter et modifier des objets entrants et sortants pour une méthode cliente précise. |
Parent |
Obtient l'objet ClientRuntime conteneur. |
ReplyAction |
Reçoit l'action du message de réponse pour cette opération. |
SerializeRequest |
Obtient ou définit une valeur qui spécifie si l'objet Formatter sérialise un message sortant. |
SyncMethod |
Obtient ou définit la méthode qui est associée à cette opération. |
TaskMethod |
Obtient ou définit la méthode associée à une tâche. |
TaskTResult |
Obtient ou définit le type du résultat de la méthode associée à une tâche. |
Méthodes
Equals(Object) |
Détermine si l'objet spécifié est égal à l'objet actuel. (Hérité de Object) |
GetHashCode() |
Fait office de fonction de hachage par défaut. (Hérité de Object) |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
ToString() |
Retourne une chaîne qui représente l'objet actuel. (Hérité de Object) |