本文通过一个维修工与工具库的例子形象的描述一下为什么要用依赖注入、它的工作原理是什么样的, 然后根据这个类比一下ASP.NET Core 中的依赖注入, 从而深刻了解它的使用方法、注意事项以及回收机制等....
1.为什么要用依赖注入(DI)
什么是依赖注入就不说了, 为什么要使用呢?
..., 功能就是依赖注入, 在ASP.NET Core中被广泛使用.
①IServiceCollection
它正是图三中的①IServiceCollection, 它是一个IList<ServiceDescriptor...在ASP.NET Core中, Lifetime为Scoped的实例在每次请求中只创建一次.
4.使用方法及需要注意的问题
对于上面的维修工的例子, ASP.NET Core的依赖注入还是有一些不一样的地方...因为无论在Singleton还是Scoped的情况下, 可能在应用的多个地方同时使用同一个实例, 所以在程序设置的时候就要注意了, 如果存在像在上面的Test有个Name属性提供了 { get; set