アプリケーションで常にサービスをシングルトンとして使用するようにしたいのですが、デフォルトでシングルトンスコープを使用するようにNinjectを設定するにはどうすればよいですか。タイプを登録するために規則を使用していますが、Bind <>メソッドを使用する必要がありますか?
1654 次
1 に答える
8
こんにちは、すべてのサービスがあなたから継承していると仮定するとIService
、次のように書くことができます
次のusingステートメントを追加します
using Ninject.Extensions.Conventions;
次のような規則を使用します
kernel.Bind( x => x
.FromThisAssembly()
.SelectAllClasses().InheritedFrom<IService>()
.BindAllInterfaces()
.Configure(b => b.InSingletonScope()));
必要に応じて少し調整する必要があるかもしれません。
于 2012-05-28T10:03:15.277 に答える