2

ネットワーク上に存在するネットワーク デバイスに基づいて有効化および無効化されるアプリケーションに多数の機能があるシナリオがあります。Ninject を使用して、アプリケーション内の現在の機能ツリーを管理しています。

私がやりたいことは、アプリケーションの実行中に、一連のバインディングをカーネルに追加および削除できるようにすることです。これらを一緒にバンドルできるように Ninject モジュールのようなものを使用したいのですが、既存のカーネルからモジュールを追加/削除する方法がわかりません。

誰でもこれを行う方法を知っていますか、それともより良いオプションがありますか?

4

1 に答える 1

2

最初の解決後に追加/削除しようとしないでください! オブジェクトを解決する前にカーネルを完全に構成する必要があり、最初の解決後に構成を変更しないでください

代わりに条件付きバインディングを使用します。

Bind<INetworkDevice>().To<NetworkPrinter>().When(ctx => PrinterIsEnabled());
于 2011-12-02T08:35:40.793 に答える