2012-05-07 3 views
3

Ninjectフォーラムで投稿しましたが、何の回答もありません...誰か提案があれば疑問に思っていますか?N複数の名前のついたスコープにサービスを必要とする

http://groups.google.com/group/ninject/browse_thread/thread/9ac79d5541f015cb

みなさん、こんにちは、 私は、Windowsサービスで、いくつかの異なるワークフローを持っており、これらの ワークフローは、いくつかの依存関係を共有します。複数のスコープを定義し、そのスコープにバインドしたいと思います。 それぞれ異なるスコープの複数のバインディングを作成すると、基本的には重複するバインディングがあると言う 例外が発生します。 これを行う方法がありますか?

ありがとうございます!

答えて

3

スコープはライフサイクルを定義し、どのバインディングを使用するかを定義しません。条件付きバインディングを使用して、いつどのタイプを使用するかを指示します。例えば。親バインディングに名前を追加し、WhenParentNamedまたはWhenAnyAnchestorNamedを使用して、どのバインディングを使用するかを指定します。

複数のバインディングを持つ唯一の理由は、スコープ名が異なることが原因である場合は、代わりに同じスコープ名を使用することを検討してください。それらが異なっている必要はありません。例えば。複数のコントローラがある場合は、すべてコントローラスコープを定義できます。

関連する問題