問題タブ [ninject-conventions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
233 参照

ninject - 多くのクラスがNinject.Extensions.Conventionsで1つのインターフェースを継承する場合、どうすればよいですか

私のアイテムには、1 つのインターフェイスを継承する複数のクラスと、このようなインターフェイスが多数あります。たとえば、クラス A|B|C はインターフェイス Ilog を継承し、クラス F|E|G はインターフェイス IData を継承し、クラス H|I|J は IBase を継承します。今、Ninject.Extensions.Conventions を使用してすべてのインターフェイスをバインドしたいのですが、どうすればよいですか。慣例を使用してそれができない場合は、最善の方法を教えてください。誰かにアイテムでの Ninject.Extensions.Conventions の使用方法を教えてもらいたいのですが、具体的なシンテックスは教えないでください。クラスとインターフェイスを整理してインターフェイスを簡単にバインドできるようにする方法を知りたいです。助けてくれてありがとう! 次のようなコード例:

今、インターフェイス Ilog を A に、IData を E に、IBase を H に解決したいのですが、Ninject.Extensions.Conventions をどうすればよいですか? 多くのインターフェイスがこのような場合、どうすればよいですか?

0 投票する
2 に答える
97 参照

c# - Ninject コンベンション バインドが失敗したかどうかを通知する

バインディングを動的に追加するために Ninject.Extensions.Conventions を使用しています。ロードする .dll 名は構成に格納されます。構成が正しくなく、.dll をロードできない場合は、そのことを知っておくとよいでしょう。現在、.dll の読み込みに失敗してもバブルアップしません。たとえば、ポテトをロードしようとすると、キャッチできるエラーはありません。

構成が悪いことを知る方法はありますか? IntelliTrace ウィンドウで、例外がスローされましたが、発生する前にキャッチされました。

0 投票する
1 に答える
112 参照

c# - 複数の Ninject モジュールが奇妙な動作をする

これは少し複雑ですが、私の環境では再現可能です。アーキテクチャは次のとおりです。

Ninject モジュールの実装

さて、次のエラーで Web プロジェクトを実行すると、上記が壊れます。

ただし、バインディングを(実行中の Web プロジェクトではなくNinjectBindingsModule、コンソール アプリケーションに対して) 変更すると、次のようになります。

その後、Web プロジェクトは正しく機能します。Web プロジェクトから NinjectBindingsModule クラスへの明示的な参照はなく、そこにブレークポイントを配置してもブレークポイントにヒットしません。NinjectWebBindingsブレークポイントを挿入して通常どおり続行すると、ブレークポイントにヒットします。

これは、Ninject が、参照されたアセンブリ内のすべてのモジュールをロードするかスキャンし、バインドに関して何かを行っていることを意味します。モジュールごとに個別のプロジェクトを持たずにこれを解決する方法についてのアイデアはありますか?

0 投票する
2 に答える
130 参照

ninject - 複雑な開始で規約拡張を使用する方法 (例: ToMethod )

規約拡張の例

そして、私が取得する各タイプは、このメソッドで複雑な開始を提供する必要があります