我在Windows Phone應用程序中使用Ninject。注入需要初始化參數的依賴項
我的邏輯包括IBarViewModel接口是:
public interface IBarViewModel
{
double Width { get; set; }
bool IsAchieved { get; set; }
CornerRadius Corner { get; set; }
}
目前,僅存在一個IBarViewModel的implementatation - GenericBarViewModel。
所有的IViewModel實現器必須在創建時設置這三個主要屬性。
我想在運行時從我的代碼創建這些IBarViewModels的實例。我該怎麼做。
當我在編程反對的實現(類被簡稱爲Bar
),我只是調用的對象初始化是這樣的:
_bars.Add(new Bar
{
Width = _totalWidth,
IsAchieved = false,
Corner = new CornerRadius(5, 5, 5, 5)
});
按回答這個問題:Inject value into injected dependency我可以通過一個參數給ninject模塊。
唯一的問題仍然是:我必須將我的ninject內核深入到邏輯中來執行這種參數化的依賴關係解析嗎?
請參閱[這裏](http://stackoverflow.com/questions/2227548/creating-an-instance-using-ninject-with-additional-parameters-in-the-constructor)。讓你的類在構造函數中接受這些參數並指示ninject提供哪些值。 –