2

나는 ASP.Net 코어에서 시작했다. 종속성 주입은 ASP.Net 핵심 프레임 워크의 일류 시민이며 다양한 기능을 갖춘 다양한 종류의 인젝션에 사용할 수 있습니다. 서비스 및 도서관.ASP.Net 핵심은 어떤 종속성 주입 프레임 워크를 사용합니까?

나는 의존성 주입 프레임 워크이 사용하고있는 을 알고 싶습니다. Introduction to Dependency Injection in ASP.NET Core

ASP.NET 코어에서 이들 문서는 지원 및 활용 의존성 주입하는 처음부터 설계되었습니다. ASP.NET 핵심 응용 프로그램은 Startup 클래스의 메서드에 주입하여 기본 제공 프레임 워크 서비스를 활용할 수 있으며 응용 프로그램 서비스도 주입 용으로 구성 할 수 있습니다.

그들은 기초에서 스스로 작성 했습니까? 또는 기존 오픈 소스 종속성 삽입 프레임 워크를 다시 사용하고 있습니까? 그렇다면 어느 것입니까?

요구하는 이유는, 자연적인 호기심 외에, 내 .Net 4.6.1.ASP.Net 웹 API 응용 프로그램에서 ASP.Net 코어, 그들이 사용하는 동일한 프레임 워크를 사용하려는이기도합니다.

대부분의 DI 프레임 워크가 매우 느리고 부풀어 오른 것을 발견했기 때문에 Unity도 있습니다.

대조적으로 ASP.Net CORE DI 프레임 워크는 정말 빠르다.

답변

2

.NET Core는 오픈 소스이기 때문에이 내용을 스스로 검토 할 수 있습니다. 은 "의존성 주입"리포 (https://github.com/aspnet/DependencyInjection)에가는 소스에서 아래로 이동

https://github.com/aspnet/home

다음 ASP.NET 코어 리포가에있다

https://github.com/dotnet/corefx

그리고 :에서 기본의 repo입니다 우리가 찾는다 https://github.com/aspnet/DependencyInjection/blob/dev/src/Microsoft.Extensions.DependencyInjection/ServiceProvider.cs

그 파일을 통하여 그것을 읽는 것은 확실히 는 DI 컨테이너와 같게를 본다. 마이크로 소프트가 독자적으로 썼다 고 말하는 것은 공정하지만, Dependency Injection repo의 문서에 따라 기존 문서를 사용하는 것을 지원합니다.

+1

그들은 독자적으로 글을 썼으며, 특히 자신의 이름을 밝히지 않기로 결정했습니다. 그것은 단지 "ASP.NET 코어에 내장 된 서비스 컨테이너"입니다. – ssmith

관련 문제