질문의 배경 : 나는 현재 유니티 컨테이너를 구성하고 있고 클래스의 생성자를 설정하는 데 문제가 있어요오류 해결 C#을 통일 생성자
.
해당 생성자의 클래스는 표시된 것처럼 설정됩니다. 그것은 3 개의 문자열 매개 변수를 취한 다음 컨테이너에 설정하는 2 개의 객체를가집니다.
public VersionControlFacade(string serverPath, string username, string password, IConnectionManager connectionManager, IPromoManager promoManager)
는 위 클래스의 구성 유니티 용기는 같습니다
은container.RegisterType<IPromoManager, promotionManager>();
container.RegisterType<IConnectionManager, connectionManager>();
container.RegisterType<ITfsVersionControlFacade, TfsVersionControlFacade>(new InjectionConstructor(connectionString, username, password));
는 오류 : 현재
은 UnityContainer
객체를 해결하기 위해 노력하고, 다음과 같은 예외가 발생 될 때 :
The type VersionControlFacade does not have a constructor that takes the parameters (String, String, String)
나는 이것을 이해한다. 나는 실제로 두 개의 다른 매개 변수를 전달하고있다. 그러나 이것이 IPromoManager
과 IConnectionManager
을 등록하고 이것들이 해결되고 VersionControlFacade
생성자에 자동으로 주입된다고 생각한다.
논리가 잘못된 부분은 누구에게 말해 줄 수 있습니까? 해결하려면 어떻게해야합니까? 내가 믿는
귀하의 다른 질문 http://stackoverflow.com/questions/21675845/cannot-set보기 -web-service-constructor-parameter는 이름 지정 문제가있을 수 있음을 보여줍니다. 관심있는 생성자가'VersionControlFacade'인데도'VersionControlService'를 구현합니까? – AndyG