asp.net Core에서 여러 인터페이스를 등록하고 분석하여 를 구현하십시오.
질문 진술
동일한 인터페이스 서비스를 사용할 때 고유 한 주요 등록 및 분석을 기반으로 도전 할 수 있습니다. 특정 구현을 구별 할 수있는 다른 IOC 컨테이너와 달리 ASP.NET Core의 기본 DI 시스템은 이와 관련하여 제한되는 것으로 보입니다.
솔루션 : func를 사용하여
이 한도를 극복하기 위해 유형 공유 커미션을 가변적 인 패스 체계로 사용하여 Key를 매개 변수로 사용하고 필요한 서비스의 인스턴스를 반환 할 수 있습니다.
파일에서 등록 된 과도 서비스 및 유형 매핑을 사용하십시오.
DI가 주입 한 모든 클래스에서는 를 사용하여 필요한 서비스를 얻을 수 있습니다.
>> 참고 : 이 메소드는 문자열 키를 사용하여 목적을 단순화하지만 필요한 경우 사용자 정의 구문 분석 유형을 키로 사용할 수 있습니다.
기타 예방 조치
이 솔루션은 주요 베팅 및 다중 인터페이스 구현 문제를 해결하지만 다음 사항에주의를 기울여야합니다.
이 솔루션에는 수동 매핑이 제대로 유지되지 않으면 실수가 쉽습니다.
등록 기간 동안 정적 데이터를 생성자에 주입하는 문제는 해결되지 않습니다. 이러한 이유로 옵션 모드 또는 기타 기술 사용을 고려하십시오. ServiceResolver
위 내용은 ASP.NET Core Dependency Injection의 고유 키로 여러 인터페이스 구현을 등록하고 해결하려면 어떻게해야합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!