Je veux « injecter » les aspects AOP sur une classe de domaine POCO en utilisant un conteneur de l'unité au moment où l'objet POCO est construit à partir de la base de données par Entity Framework ORMUnité AOP et EF POCO meilleur flux de travail
unité peut facilement « injecter » les aspects AOP sur une classe POCO à l'aide de deux façons (nous allons analyser les avantages et les inconvénients)
1) Interface Interceptor
vous obtenez un proxy objet non objet Derived de votre classe POCO.
VOUS POUVEZ AJOUTER APO À UN OBJET POCO PRÉCÉDEMMENT EXISTANT, VOUS N'AVEZ PAS BESOIN D'EN INSTAURER UN NOUVEAU.
ou
2) VirtualMethod Interceptor
vous obtenez un objet qui est un objet Derived de votre classe POCO.
Vous NE POUVEZ PAS AJOUTER AOP A UN OBJET POCO EXISTANT PRECEDEMMENT, VOUS DEVEZ EN INSTAURER UN NOUVEAU.
En outre .. nous pouvons. A12) CONFIGUREZ LE RÉCIPIENT Unity et utilisez la méthode Resolve.
ou
b) manualy DO L'injection AOP par la classe Intercept sans avoir à configurer un CONTAINER unité.
Je pouvais également récupérer les objets POCO de la base de données via EF, puis utiliser la classe Intercept avec un Intercepteur d'interface juste pour injecter AOP sur les objets précédemment récupérés. Mais le résultat ne sera pas dérivé de l'objet de la classe POCO. Donc, ce dont j'aurais besoin sur un point EF (événement) est de dire à EF qu'il doit utiliser le conteneur Unity pour résoudre la classe POCO (ou utiliser la classe Intercept avec un intercepteur VirtualMethod), donc l'AOP sera injecté et l'objet sera dérivé de la classe POCO.
BR Alex