汎用のIRepository <>インターフェイスを汎用のRepository <>にバインドしようとしていますが、常にnullを返しますか?
私は次のようなさまざまなことを試しました:
Bind(typeof(IRepository<CustomerModel>)).To(typeof(Repository<CustomerModel>));
Bind(typeof(IRepository<>)).To(typeof(Repository<>));
ただし、非ジェネリックインターフェイスとクラスを渡すと、夢のように機能しますか?
Bind(typeof(IRepository<>)).To(typeof(Repository<>));
これは、オープンジェネリックをバインドするための正しい構文です。
IRepository< of whatever >
をリクエストしたときにnullが返された場合は、共有していないコードの領域に他の問題がある可能性があります。
MVC3コントローラーコンストラクター+ Ninject に関する私の回答を参照してください。
Generic BindingはNinjectで正しく機能します。リポジトリでパラメータのないコンストラクタを使用してみてください。問題があると思います。