유니티 컨테이너에서 해결 한 몇 가지 종속성이있는 클래스를 작성했습니다. 내 메인 클래스에서 Unity register instance and resolve
나는 내 유니티 컨테이너UContainer.RegisterInstance<MyObject>(myObject, new ExternallyControlledLifetimeManager());
에 등록
MyObject myObject = new MyObject();
새로운 객체를 생성 내가 종속성
ConsumerObject consumer = new ConsumerObject();
으로 이것을 필요로하는 유형을 생성
소비자는 다음과 같습니다.
종속성의해상도가 실패 = "MyObject를"유형, 이름 = "": 6,
public class ConsumerObject { public ConsumberObject() { theObject = (MyObject)UContainer.Resolve(typeof(MyObject)); } }
이 예외가 발생합니다. 예외 메시지 : 현재 빌드 작업 (빌드 키 [MyObject, null] 빌드 키 실패) : 생성자 MyObject (IPreferenceStorageProvider pp)를 호출 할 때 매개 변수 pp를 확인할 수 없습니다. (전략 유형 BuildPlanStrategy, 인덱스 3)
왜 내 해결 호출이 해당 유형의 다른 contsructor를 호출하려고합니까?
감사
지금까지 내가 유니티 (기본적으로)하려고 알고
문제는 "MyObject를이"나의 목적은 .. 그것은 .. 나는 그것을 만들 수 있습니다,하지만 난 그 구조 통제 할 수없는 약 15 생성자가되는입니다 .. 왜 어쨌든 그것을 새롭게하려는 유니티가 있습니까? 나는 인스턴스를 생성하고 그것을 등록했다. 이제는 싱글 톤으로 컨테이너에있다. 생성자를 호출해서는 안된다. ??? –