Asp.net core ASP.net核心依赖项反转

Asp.net core ASP.net核心依赖项反转,asp.net-core,dependency-injection,Asp.net Core,Dependency Injection,因此,我阅读了有关Asp.net core的依赖项注入的文章: 但我看不出它是如何实现依赖的反转的 在StartUp class ConfigureService方法中将接口绑定到具体类的方式意味着主项目必须引用注入到其中的任何依赖项。更糟糕的是,如果您的依赖关系引用主项目(例如使用其模型),您将以这种方式进入循环依赖关系。 是否有任何方法可以从单独的第三个项目(程序集)注入依赖项?如何避免这种情况?您不应该依赖主项目,因为它是应用程序的根 如果将公共接口或相关模型放置在单独的程序集中,则可以安

因此,我阅读了有关Asp.net core的依赖项注入的文章:

但我看不出它是如何实现依赖的反转的

在StartUp class ConfigureService方法中将接口绑定到具体类的方式意味着主项目必须引用注入到其中的任何依赖项。更糟糕的是,如果您的依赖关系引用主项目(例如使用其模型),您将以这种方式进入循环依赖关系。
是否有任何方法可以从单独的第三个项目(程序集)注入依赖项?如何避免这种情况?

您不应该依赖主项目,因为它是应用程序的根

如果将公共接口或相关模型放置在单独的程序集中,则可以安全地使用或实现它们,而无需交叉引用,并避免循环依赖关系。这就是依赖项反转的全部内容:
Service->Contract