내가 Ninject에이 인터페이스에 공장을 만들 지시 :Ninject에 .ToFactory : 예외 : "예외가 발생 : 'Ninject.ActivationException'을 Ninject.dll에서"
this.Bind<IModelFactory>().ToFactory().InSingletonScope();
이 팩토리 인터페이스에서, 나는 공장을 정의 :
interface IModelFactory
{
MyClass CreateMyClassFactory(string param1, DateTime param2);
}
그때 새로운 클래스 생성하기 위해 공장을 사용하려고 :
Class myClass = modelFactory.CreateMyClassFactory(param1, new DateTime(2017,01,01);
를 ... 그러나 그것은 던져 의이 예외 : 던져
예외 : 'Ninject.ActivationException'Ninject.dll에
추가 정보 : 오류 활성화 문자열
일치하는 바인딩을 사용할 수 없으며, 유형 자기 바인딩되지 않습니다 .
활성화 경로 :
2)
제안 HedgeOrderMyClass에 대한 형 MyClass에의 생성자
1) 요청의 매개 변수 제목에 의존 문자열의 주입 :
1) 당신이 있는지 확인 string에 대한 바인딩을 정의했습니다.
2) 바인딩이 모듈에서 정의 된 경우 모듈이 커널에로드되었는지 확인하십시오.
3) 실수로 둘 이상의 커널을 만들지 않았는지 확인하십시오.
4) 생성자 인수를 사용하는 경우 매개 변수 이름이 생성자 매개 변수 이름과 일치하는지 확인하십시오.
5) 자동 모듈로드를 사용하는 경우 검색 경로와 필터가 올바른지 확인하십시오.
[여기] (https://www.cuttingedge.it/blogs/steven/pivot/entry.php?id=100)에 자세히 설명되어있는 것처럼 공장 추상화를 방지합니다. – Steven