2012-05-20 2 views
1

J'ai un contrat de service comme suivreWCF ChannelFactory et OperationBehavior

[ServiceContract] 
public interface IService 
{ 
    [MyCustomBehavior] 
    [OperationContract] 
    void MyOperation(); 
} 

La question est de savoir si un appel à

new ChannelFactory<IService>(myBinding, myUri) 

Ajoutera implicitement MyCustomBehavior avant l'appel, juste en vertu de me faire passer la IService à la ChannelFactory ou aurai-je besoin de creuser plus profondément et explicitement définir MyCustomBehavior à l'opération MyOperation?

Répondre

1

Comportements Fonctionnement

comportements de fonctionnement, qui mettent en œuvre l'interface IOperationBehavior, sont utilisés pour étendre à la fois le moteur d'exécution client et de service pour chaque opération .

Il existe deux mécanismes permettant d'ajouter des comportements de fonctionnement à une opération . Le premier mécanisme consiste à créer un attribut personnalisé utilisé sur la méthode qui modélise l'opération. Lorsqu'une opération est ajoutée à un ServiceHost ou à une ChannelFactory, WCF ajoute tous les attributs IOperationBehavior à la collection de comportements sur la OperationDescription créée pour cette opération.

Le deuxième mécanisme consiste à ajouter directement le comportement à la collection de comportements sur une description d'opération construite.

Je vais vous suggérer de lire ceci en premier.

Configuring and Extending the Runtime with Behaviors

+0

Sonne bien merci. – Alwyn

Questions connexes