3

私の MVC 4 サービスには次のバインディングがあります。

        kernel.Bind(Sub(x)
                        x.FromAssembliesMatching("*").
                        SelectAllClasses().
                        BindDefaultInterface()
                    End Sub)

また、サービスには、すべてのインターフェイスを含む契約プロジェクトへの参照しかありません。Web API サービスが呼び出されると、ninject はアセンブリをスキャンして一致する具象を探し、オブジェクトを吐き出し、コンストラクター バインディングを埋めます。

ドメイン モデル メソッドのメソッド呼び出しをインターセプトして、必要に応じてエラー、ログ、およびベンチマークを処理したいと考えています。

それを処理するために別のモジュールを作成する必要がありますか?
ドメイン プロジェクトで ninject への参照を持ちたくない

4

1 に答える 1

4

Ninject.Extensions.Interceptionたとえば、動的プロキシ拡張機能を参照してください。それで。以下をせよ:

BindDefaulInterface()

追加

.Configure(b => b.InScopeOfYourChoice().Intercept().With...)

それでおしまい

于 2013-01-12T00:23:33.260 に答える