1

アプリケーションを開発しており、DI に Ninject を使用しています。使用しているソリューション構成に応じて、特定のメソッドに別のオブジェクトを挿入できるようにしたいと考えています。つまり、「モック」構成モードではモックオブジェクトを注入し、デバッグ/リリース構成では実際のオブジェクトを注入したいと考えています。

Ninject と構成を読ん で、XML 構成がそのような可能性を提供することを理解しています。ただし、可能であれば XML なしでこれを行いたいと考えています。(公開された製品ではインジェクションの詳細を構成可能にすべきではないという Ninject に同意する傾向があります...) これを行うためにプリプロセッサ ディレクティブを使用できることも認識しています。私が知りたいのは、この機能が Ninject に存在するかどうか、またはそれを達成するための拡張機能/回避策が必要かどうかです。

4

1 に答える 1

7

ninject 構成のプリプロセッサ ディレクティブはどうですか。それはあなたが望むことをするべきです。

#if DEBUG
        kernel.Bind<IMyService>().To<MyServiceMock>();
#else
        kernel.Bind<IMyService>().To<MyService>();
#endif
于 2012-11-09T15:08:52.873 に答える