2

我已經開始涉足ASP.Net核心,並發現依賴注入是ASP.Net核心框架中的一等公民,它內置並隨時可用於注入各種服務和圖書館。ASP.Net核心使用什麼依賴注入框架?

我想知道哪個依賴注入框架他們正在使用。他們的文檔位於Introduction to Dependency Injection in ASP.NET Core

ASP.NET Core旨在支持和利用依賴注入。 ASP.NET核心應用可以讓他們利用內置的框架服務注入到啓動類的方法,並應用服務可以配置爲注入以及

他們寫了自己從地面行動?或者他們是否重新使用現有的開源的依賴注入框架。如果是,哪一個?

之所以問,除了天生的好奇心,也是我想用他們使用的是相同的框架中ASP.Net核心,在我.Net 4.6.1.ASP.Net的Web API應用。

因爲我發現大多數DI框架非常緩慢和臃腫,甚至Unity

相比之下,ASP.Net CORE DI框架似乎非常快速和精益。

回答

2

.NET Core是開源的,所以我們可以自己檢查一下。基座回購是:

https://github.com/dotnet/corefx

和ASP.NET核心回購是:

https://github.com/aspnet/home

轉到 「DependencyInjection」 回購(https://github.com/aspnet/DependencyInjection)和在源極向下導航我們發現https://github.com/aspnet/DependencyInjection/blob/dev/src/Microsoft.Extensions.DependencyInjection/ServiceProvider.cs

通過該文件讀取它肯定看起來像一個DI容器。公平地說,微軟自己寫了自己的,雖然他們也支持使用現有的根據依賴注入回購文件。

+1

他們寫了自己的,特別選擇不給它自己的名字。這只是「ASP.NET Core中的內置服務容器」。 – ssmith