Nintject Interception Proxy-Klasse mit nicht leerem Konstruktor über Castle Dynamic Proxy

Ich stütze den größten Teil meiner aktuellen Implementierung auf die hier angegebenen Informationen:

Ninject Intercept irgendeine Methode mit einem bestimmten Attribut?

Ich verwende eine benutzerdefinierte Planungsstrategieklasse, die nach allen Methoden mit bestimmten Attributen sucht (nicht nach Interceptor-Attributen). Diese werden dann weitergeleitet, wenn sie den Kriterien entsprechen.

Ein Anwendungsbeispiel wäre:

Kernel.Components.Add<IPlanningStrategy, CustomPlanningStrategy<LoggingAttribute, LoggerInterceptor>>();

Dies würde dann nach irgendwelchen Methoden suchen, die a haben[Logging] Attribut und verwendet dann den Logging Interceptor.

Derzeit erhalte ich jedoch eine InvalidProxyConstructorArgumentsException vom dynamischen Proxy, wenn versucht wird, die Methoden mit verwandten Attributen auf dem Proxy zu speichern. Jetzt erinnere ich mich, dass ich gelesen habe, dass Sie virtuelle Methoden benötigen, aber ich erinnere mich nicht, dass Sie einen parameterlosen Konstruktor haben MÜSSEN.

Alle Bindungen werden an Schnittstellen vorgenommen, und die AOP-Interceptors erfolgen über Attribute und die im obigen Link angegebene benutzerdefinierte Proxy-Planungsklasse.

Gibt es eine Möglichkeit, einen dynamischen Proxy (oder die Linfu-Version) zum Proxy der Klassen zu verwenden, die Konstruktoren mit Abhängigkeiten haben? (Alle Abhängigkeiten befinden sich im Kernel, so dass sie nicht aufgelöst werden können.)

Antworten auf die Frage(2)

Ihre Antwort auf die Frage