【发布时间】:2020-08-11 04:19:43
【问题描述】:
如何在 .NET Core 库项目中将一个类注入到另一个类中? 我应该在哪里配置 DI,因为它在 API 项目的 StartUp Class ConfigureServices 中完成?
【问题讨论】:
-
让类显式依赖于另一个(更好的是,它的抽象),然后在组合根目录配置容器。 (启动)
-
类库中没有启动类。
-
正如@Nkosi 所说,您的库不应该关注依赖注入,而应该关注控制反转,即将其依赖关系外部化,以便它们可以被注入。配置 DI 容器的工作是针对使用库的应用程序。如果有很多服务需要配置,你可以通过在你的库中添加一个
IServiceCollection扩展来抽象它,但实际上应该是应用程序调用它。
标签: asp.net-core .net-core dependency-injection class-library