2015-12-16 2 views
0

J'ai implémenté un InterceptionBehaviour (unité) pour consigner des données avant et après les appels de méthode. Je passe/injecte une interface ILogger dans le constructeur de mon comportement. Ma question est-ce que je dois avoir l'interface ILogger retournée par GetRequiredInterfaces ou pas? et pourquoi?quel est le but de IInterceptionBehaviour GetRequiredInterfaces?

Répondre

1

dois-je avoir l'interface ILogger retourné par GetRequiredInterfaces ou non?

Non, vous ne le faites pas. Il suffit d'injecter ILogger dans le constructeur de la classe de comportement d'interception et assurez-vous que vous enregistrez ILogger avec le conteneur.

pourquoi?

L'interception fonctionne en créant une classe proxy qui enveloppe l'objet intercepté. Vous pouvez utiliser GetRequiredInterfaces pour que cette classe proxy implémente des interfaces supplémentaires sans que l'objet cible (original) ne mette en œuvre ces interfaces. Ce que vous essayez de faire, cependant, n'est pas lié à un tel scénario.