0

Windows Phone 응용 프로그램에서 Ninject를 사용하고 있습니다. 초기화를위한 매개 변수가 필요한 종속성 삽입

내 논리

이다 IBarViewModel 인터페이스가 포함

public interface IBarViewModel 
    { 
     double Width { get; set; } 
     bool IsAchieved { get; set; } 
     CornerRadius Corner { get; set; } 
    } 

는 현재 IBarViewModel의 한 implementatation 존재를 - GenericBarViewModel합니다.

모든 IViewModel 구현자는 생성시이 세 가지 주요 속성을 설정해야합니다.

런타임시 이러한 IBarViewModels의 인스턴스를 내 코드에서 만들고 싶습니다. 내가 어떻게 해. 이 질문에 대한 답으로 당

_bars.Add(new Bar 
       { 
        Width = _totalWidth, 
        IsAchieved = false, 
        Corner = new CornerRadius(5, 5, 5, 5) 
       }); 

:

가 난 그냥이 같은 개체 이니셜 라이저를 호출하고, (클래스는 단순히 Bar를 불렀다) 구현에 대해 프로그래밍 때 Inject value into injected dependency은 내가를 전달할 수 있습니다 매개 변수를 ninject 모듈에 지정하십시오.

유일한 질문은입니다. 그런 매개 변수가있는 종속성 해결을 수행하기 위해 제 ninject 커널을 로직 깊숙히 가지고 있어야합니까?

+0

[여기] (http://stackoverflow.com/questions/2227548/creating-an-instance-using-ninject-with-additional-parameters-in-the-constructor)를 참조하십시오. 그냥 클래스가 생성자에서 매개 변수를 받아들이고 어떤 값을 제공 할지를 지시하십시오. –

답변

1

IoC를 사용하지 않아도된다고 생각합니다. 그것은 전혀 이해가되지 않습니다.

GenericBarViewModel은 3 개의 속성에 대한 기본값을 설정하고 추상화하고 다른 "Bar"ViewModel 구현을 GenericBarViewModel에서 상속 받도록하지 않는 것이 어떻습니까?

무엇을 정확히으로 보내시겠습니까?

+0

클로스, 그게 내가 어제 한 일입니다. 고맙습니다. –

관련 문제