는 아래의 고려 :IOC는 - 여러 의존성 사출
public class DependencyA {}
public class DependencyB {}
public class DependencyC {}
public class DependencyD {}
public class Service1
{
public Service1(DependencyA a, DependencyB b, DependencyC c, DependencyD d) { ... }
}
public class Service2
{
public Service2(DependencyA a, DependencyB b, DependencyC c, DependencyD d) { ... }
}
public class Service3
{
public Service3(DependencyA a, DependencyB b, DependencyC c, DependencyD d) { ... }
}
내 서비스의 대부분은 여러 공통 구성 요소에 의존하는 것을 발견하고, 그리고 캐치에게 다음과 같은 모든 솔루션을 구현 생각하고 (모두 최대 유선 Windsor를 통해) 서비스 생성자에서 코드의 반복을 저장합니다.
public class DependencyContainer
{
public DependencyA A { get; set; }
public DependencyB B { get; set; }
public DependencyC C { get; set; }
public DependencyD D { get; set; }
}
public class Service1
{
public Service1 (DependencyContainer container) { ... }
}
또는 ServiceBase 클래스를 만들 수 있습니다.
실제 질문은 서비스에서 더 넓은 디자인 문제를 강조합니까?
아마도 저는 DI를 너무 멀리하고 있습니다. 그러나 이것들은 모두 진정한 의존성입니다.
그렇다면 어떻게 코딩해야합니까? 제안 된 솔루션이 목표를 달성하는 유효한 방법이 아닌 경우?
귀하의 권리. 제가 냄새를 맡았 기 때문에 질문을 제기 한 바로 그 사실입니다. 감사. – crowleym