ASP.NET CORE에서 여러 서비스를 구현하기위한 여러 서비스
ASP.NET CORE에서 <.> 여러 서비스가 종종 동일한 인터페이스에 직면합니다. 이 상황을 효과적으로 처리하려면 이러한 서비스를 등록하는 방법과 구별 식별자를 사용하여 런타임 동안이를 해결하는 방법을 이해해야합니다.
서비스 등록
<.> asp.net Core에서는 시작 클래스의 메소드에 서비스를 등록 할 수 있습니다. 일반적으로 우리는 다음과 같은 서비스를 등록했습니다
그러나 그러나이 방법은 다른 서비스를 구별 할 수 없으므로 향후 서비스를 분석하는 능력을 제한합니다.
키를 사용하여 를 분석하십시오
키를 기반으로 서비스를 해결하려면 서비스 구현에 키를 매핑하는 메커니즘이 필요합니다. 커미션을 사용하여 구현할 수 있습니다
우리는이위원회를 일시적인 서비스로 등록하고 서비스 구현에 매핑 할 수 있습니다.
생성자 의 종속 주입
위의 방법은 유효하지만 등록 기간 동안 정적 데이터를 생성자에 주입하지 못하게합니다. 이 한계를 극복하기 위해 설정을 주입하는 메소드를 제공하는 모드를 사용할 수 있습니다.
그런 다음 서비스 생성자에서 이러한 옵션에 액세스 할 수 있습니다.
결론 ConfigureServices
커미션 및 1 2 | services.AddTransient<IService, ServiceA>();
services.AddTransient<IService, ServiceB>();
|
로그인 후 복사
모드를 사용하여 ASP.NET Core에서 여러 서비스를 효과적으로 등록하고 분석 할 수 있으며 동시에 정적 데이터에 대한 생성자 주입을 주입 할 수도 있습니다. 이 방법은 복잡한 종속성 항목에 대한 유연하고 유지 관리 가능한 솔루션을 제공합니다. 위 내용은 ASP.NET Core에서 다른 키로 여러 서비스 구현을 구현하고 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!