【问题标题】:How to Replace Built in IoC with my own IoC?如何用我自己的 IoC 替换内置 IoC?
【发布时间】:2016-07-22 19:33:20
【问题描述】:

众所周知,在 asp.net Startup 类中有一个方法 ConfigureServices 我们可以添加自定义服务。通过依赖注入提供服务。

ASP.NET Core 包含一个简单的内置控制反转 (IoC) 默认支持构造函数注入的容器,但可以 轻松替换为您选择的 IoC 容器。除了它的 松耦合的好处,DI 使服务在您的整个 应用

我的问题是如何用我自己的 IoC 替换内置 IoC?

如果有的话,请给我一个例子。

【问题讨论】:

    标签: asp.net-core


    【解决方案1】:

    目前有许多不同的容器可用于 ASP.NET Core,包括

    在每种情况下,您使用它们的具体方式各不相同,但基本上它们都遵循相同的模式:

    • 使用内置容器照常注册依赖项
    • 创建第三方容器的实例
    • 向您的第三方容器添加任何其他注册
    • 使用来自内置容器的注册填充新容器
    • 从您的第三方容器返回 IServiceProvider

    可能值得注意的是,围绕这些库与内置容器的集成方式进行了许多讨论。评论 here 提供了很好的对话摘要,或者您可以直接进入 GitHub herehere 上的讨论。

    【讨论】:

    • “但基本上它们都遵循相同的模式”。如引用的集成页面中所述,Simple Injector 并非如此。 Simple Injector 与内置容器并行运行。
    猜你喜欢
    • 2010-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-29
    • 2022-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多