dependency-injection - 我应该在简单注入(inject)器中使用单例注册吗?

标签 dependency-injection inversion-of-control simple-injector

在我的注册表中,我将很多东西注册为Singleton

我这样做是因为它们都是线程安全的并且没有状态。因此,内存中有一个实例就可以了。

我还对需要上下文/状态的类型使用 AsyncScoped 生活方式,但与我拥有的单例注册数量相比,它们的数量很少且相差甚远。

将线程安全、无状态类型注册为单例有什么问题吗?

最佳答案

这其实是一个很难回答的问题。一般有两个DI Composition Models您可以申请构建依赖图:

两种模型都有其优点和缺点,但只有当您整体应用环境组合模型时,您才能将组件注册为单例。

我开始写关于这两个模型的博客 here .

关于dependency-injection - 我应该在简单注入(inject)器中使用单例注册吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56280412/

相关文章:

c# - Ninject,使用两种方式的属性注入(inject)来解决循环依赖

java - Guice 中的 MembersInjectors 是什么?

c# - SimpleInjector 可以在运行时为泛型类型注册一个初始值设定项吗?

c# - 简单注入(inject)器无法在 Web API Controller 中注入(inject)依赖项

spring - 将依赖注入(inject)与 Play 框架一起使用的示例用例

android - 使用 Dagger 2 注入(inject) Androidx fragment

c# - 如何解析 Orchard CMS 中的对象?

dependency-injection - 统一 IoC : "Operation could destabilize the runtime"

entity-framework - 在 ASP.NET MVC Controller 中管理 Entity Framework ObjectContext 的依赖项注入(inject)的正确方法是什么?

c# - 如何使用 FluentScheduler 正确配置 Simple Injector