Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte.
Traduction
Source
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

IOperationBehavior.ApplyDispatchBehavior, méthode

Implémente une modification ou une extension du client sur l'intégralité d'une opération.

Espace de noms :  System.ServiceModel.Description
Assembly :  System.ServiceModel (dans System.ServiceModel.dll)
void ApplyDispatchBehavior(
	OperationDescription operationDescription,
	DispatchOperation dispatchOperation
)

Paramètres

operationDescription
Type : System.ServiceModel.Description.OperationDescription
Opération en cours d'examen.Utilisez-la à titre d'examen uniquement.Si la description d'opération est modifiée, les résultats ne sont pas définis.
dispatchOperation
Type : System.ServiceModel.Dispatcher.DispatchOperation
Objet d'exécution qui expose des propriétés de personnalisation pour l'opération décrite par operationDescription.

Implémentez la méthode ApplyDispatchBehavior pour afficher, modifier ou étendre l'exécution du service sur l'intégralité des messages ou pour une opération spécifique. Pour plus d'informations sur les personnalisations que vous pouvez effectuer dans une application de service, consultez System.ServiceModel.Dispatcher.DispatchRuntime et System.ServiceModel.Dispatcher.DispatchOperation.

Il est recommandé que la méthode ApplyDispatchBehavior lève une exception NotImplementedException si le comportement est uniquement destiné à une utilisation dans une application cliente.

L'exemple de code suivant montre une implémentation de l'System.ServiceModel.Dispatcher.IParameterInspector qui écrit sur la console lors de l'appel à l'inspecteur sur une opération. Cette personnalisation ne peut être attachée à l'System.ServiceModel.Dispatcher.DispatchOperation ou l'System.ServiceModel.Dispatcher.ClientOperation et est par conséquent souvent insérée par un comportement d'opération.


#region IParameterInspector Members
public void AfterCall(string operationName, object[] outputs, object returnValue, object correlationState)
{
  Console.WriteLine(
    "IParameterInspector.AfterCall called for {0} with return value {1}.", 
    operationName, 
    returnValue.ToString()
  );
}

public object BeforeCall(string operationName, object[] inputs)
{
  Console.WriteLine("IParameterInspector.BeforeCall called for {0}.", operationName);
  return null;
}


L'exemple de code suivant montre comment le comportement d'opération attache l'inspecteur de paramètre à l'exécution.


#region IOperationBehavior Members
public void AddBindingParameters(
  OperationDescription operationDescription, BindingParameterCollection bindingParameters
)
{ return; }

public void ApplyClientBehavior(OperationDescription operationDescription, ClientOperation clientOperation)
{
  clientOperation.ParameterInspectors.Add(new Inspector());
}

public void ApplyDispatchBehavior(OperationDescription operationDescription, DispatchOperation dispatchOperation)
{
  dispatchOperation.ParameterInspectors.Add(new Inspector());
}

public void Validate(OperationDescription operationDescription){ return; }


.NET Framework

Pris en charge dans : 4, 3.5, 3.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Cela vous a-t-il été utile ?
(1500 caractères restants)
Contenu de la communauté Ajouter
Annotations FAQ