2012-06-27 45 views
3

場景:Ninject基礎知識,例如請

很新的DI和Ninject,但很想掌握它讓我知道what'm做和爲什麼。

雖然經歷一些例子和文檔我注意到以下幾點:

1. ToConstructor. 
2. ToMethod 
3. Self 

如果有人可以幫助我瞭解何時以及如何可以使用上面,就會好的。一個例子會很好。

謝謝。

回答

3

HY,

綁定聲明的結合特定類型的自身。具有無參數構造函數的類型不需要自綁定。 Ninject可以自行實例化這些類型。如果您聲明自行綁定,即Bind<Sword>().ToSelf();,則只能執行Get<Sword>。例如Get<ISword>會拋出一個ActivationException。

方法綁定允許您指定負責創建綁定類型實例的方法。例如,您可以執行以下操作:Bind<ISword>().ToMethod(() => new Sword(strength = 12));您可以在這裏查看ninject wiki上的更多示例:https://github.com/ninject/ninject/wiki/Dependency-Injection-With-Ninject