ASP.Net核心使用什么依赖注入框架?

时间:2017-04-06 00:33:54

标签: c# dependency-injection asp.net-core inversion-of-control asp.net-core-1.0

我已经开始涉足 ASP.Net Core ,并发现依赖注入是ASP.Net Core框架中的一流公民,并且它是内置的,可以用于注入各种服务和库。

我想知道 他们正在使用哪些依赖注入框架 。他们的文档在Introduction to Dependency Injection in ASP.NET Core

  

ASP.NET Core从头开始设计,以支持和利用依赖注入。 ASP.NET Core应用程序可以通过将它们注入Startup类中的方法来利用内置框架服务,并且还可以配置应用程序服务以进行注入

他们是否从头开始写自己的?或者他们是否重用现有的开源依赖注入框架。如果是,哪一个?

除了天生的好奇心之外,我还想在我的.Net 4.6.1. ASP中使用与 ASP.Net Core 相同的框架。 Net Web API 应用程序。

因为我发现大多数DI框架非常缓慢和臃肿,甚至 Unity

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

1 个答案:

答案 0 :(得分:2)

.NET Core是开源的,所以我们可以自己检查一下。基础仓库位于:

https://github.com/dotnet/corefx

ASP.NET Core Repo位于:

https://github.com/aspnet/home

转到" DependencyInjection"回购(https://github.com/aspnet/DependencyInjection)并在源代码中向下导航,我们找到https://github.com/aspnet/DependencyInjection/blob/dev/src/Microsoft.Extensions.DependencyInjection/ServiceProvider.cs

通过该文件读取它确定看起来像。可以说,微软自己编写了自己的版本,但他们也支持根据依赖注入回购中的文档使用现有文档。