1

Ninjectに組み込まれているメソッドで、アセンブリ修飾名を指定して任意の型を動的にインスタンス化できるものはありますか(カスタムで型を手動でバインドする必要はありNinjectModuleません)。

もちろん使用することもできますActivator.CreateInstanceが、すでにNinjectを使用しているので、この方法を使用するよりも、それに固執する方が好きです(ちなみに、かなり遅いと聞きました)。

4

2 に答える 2

2

以下を使用すると、特定のアセンブリでNinjectModuleを拡張するすべてのクラスを検索し、それらをロードできます。

var kernel = new StandardKernel();
kernel.Load(Assembly.Load("assembly.dll"));
于 2011-10-05T13:12:39.167 に答える
2

Ninjectには、インスタンスを作成するためのバインディングが必要です。これらのバインディングは、静的に作成することも、規則を使用して作成することもできます。やりたいことによっては、慣習が必要な場合があります。Ninject.Extensions.Conventionsをご覧ください。

于 2011-10-05T14:15:34.333 に答える