【发布时间】:2019-05-06 23:38:04
【问题描述】:
我是依赖注入模式的新手。我喜欢这个想法,但很难将它应用到我的案例中。我有一个单例对象,我们称它为 X,我在程序的许多部分、许多不同的类中经常需要它,有时在调用堆栈的深处。通常我会将其实现为全局可用的单例。这是如何在 DI 模式中实现的,特别是使用 .NET Core DI 容器?我知道我需要将 X 注册为 DI 容器作为单例,但是我如何才能访问它呢? DI 将使用引用 X 的构造函数来实例化类,这很好——但我需要在调用层次结构的深处,在我自己的对象中,而 .NET Core 或 DI 容器对此一无所知,在使用 new 而不是创建的对象中由 DI 容器实例化。
我想我的问题是 – 全局单例模式如何与 DI 模式对齐/实现/替换/避免?
【问题讨论】:
-
你能分享你的代码吗?
-
感谢您的提问,但这个问题与特定的代码无关 - 而是关于模式如何/何时/为什么适用。
-
好的,那我今天就去了解点新东西,等着有人回答。 :)
-
我可以强烈推荐这个主题的 awesome book。
标签: dependency-injection .net-core singleton