Dependency injection ASP.NET 5如何注入startup';什么是依赖关系?

Dependency injection ASP.NET 5如何注入startup';什么是依赖关系?,dependency-injection,asp.net-core,Dependency Injection,Asp.net Core,我正在学习(它很棒,而且比旧的要好)。我知道ASP.NET5包含一个简单的内置控制反转(IoC)容器,默认情况下支持构造函数注入。据我所知,配置服务和依赖项是在ConfigureServices()方法中完成的 ConfigureServices()方法在StartUp方法之后调用 所以我的问题是:ASP.NET 5如何在内部注入初创公司的依赖关系 我想知道这一点,因为如果我想注入另一个依赖项,例如iFooEnvironment我该怎么做 此逻辑位于ASP.NET 5的层中: 启动类型为 IS

我正在学习(它很棒,而且比旧的要好)。我知道ASP.NET5包含一个简单的内置控制反转(IoC)容器,默认情况下支持构造函数注入。据我所知,配置服务和依赖项是在
ConfigureServices()方法中完成的

ConfigureServices()
方法在
StartUp
方法之后调用

所以我的问题是:ASP.NET 5如何在内部注入初创公司的依赖关系


我想知道这一点,因为如果我想注入另一个依赖项,例如
iFooEnvironment
我该怎么做

此逻辑位于ASP.NET 5的层中:

  • 启动
    类型为
  • IServiceCollection中的宿主层
  • 内部
  • Startup类的实例
当然,您可以在
ConfigureServices
中注册自己的服务。但是,它们在构造函数中不可用,正如您已经计算的那样。无法将您自己的服务添加到运行时服务。这是有意义的,因为运行时服务和应用程序服务之间应该有区别


但是,您可以在
Configure()
方法中插入在
ConfigureServices()
方法中注册的服务。

启动依赖项由宿主层注入(HostingEngine->StartupLoader->使用依赖项实例化启动类)…不确定您是否可以在这里执行任何操作…我可以问一下,为什么需要在Startup的构造函数中插入?你的情况是什么?谢谢@KiranChalla。我只是想知道这是否可能。有点过时,但我对一个类似问题的回答是:你可以在
ConfigureServices()
中注册服务,然后让它们注入
Configure()
方法。你的意思是没有办法将我的服务添加到运行时服务中?当然,你可以。但不是在
ConfigureServices()
之前。这是目前向服务提供商添加服务而不必接管整个托管部分的唯一方法。