2010-12-06 54 views
45

我試圖綁定通用的IRepository <>接口到我的通用存儲庫<> - 但它總是返回null?Ninject +綁定通用存儲庫

我曾嘗試過各種東西,如:

Bind(typeof(IRepository<CustomerModel>)).To(typeof(Repository<CustomerModel>)); 
Bind(typeof(IRepository<>)).To(typeof(Repository<>)); 

但是,如果我通過在非通用接口和類,那麼它就像一個夢嗎?

回答

75
Bind(typeof(IRepository<>)).To(typeof(Repository<>)); 

這是結合開放式泛型正確的語法。

如果您在請求任何>的IR知識庫<時收到回覆,那麼在您沒有共享的代碼區域中可能存在其他問題。

+0

完美! - 是的,你是對的。我的Repository構造函數依賴於一個接口 - 我現在也綁定了我的Repository使用的接口,它工作正常! - 謝謝。 – ebb 2010-12-06 20:37:00