既然.NET Core有依赖控制系统,为什么要引入Autofac呢? [已关闭]

问题描述 投票:0回答:1

我知道在旧的 .NET 中我们曾经有 Autofac 和注射器网络?

但是为什么.NET Core仍然维护Autofac?

https://autofac.readthedocs.io/en/latest/integration/aspnetcore.html

我们可以依赖使用

addsingleton vs addscoped vs addtransient

有什么理由吗?

谢谢。

.net autofac
1个回答
4
投票

Autofac 是一个早在 .NET Core 之前就存在的库,因此迁移它是有意义的,至少是为了更轻松地迁移已经使用它的项目。此外,它也不是由 Microsoft 和/或开发 .NET Core 的团队维护的(请参阅 github 项目)。

Autofac 支持比在 DI 中构建更多的功能,后者错过了诸如(参见文档)之类的功能:

内置服务容器旨在满足框架和大多数消费者应用程序的需求。我们建议使用内置容器,除非您需要它不支持的特定功能,例如:

  • 房产注入
  • 基于名称注入(仅限 .NET 7 及更早版本。有关更多信息,请参阅Keyed services。)
  • 儿童容器
  • 自定义生命周期管理
  • Func 支持延迟初始化
  • 基于约定的注册
© www.soinside.com 2019 - 2024. All rights reserved.