【问题标题】:UnityContainer usage and best practicesUnityContainer 使用和最佳实践
【发布时间】:2011-04-22 08:57:24
【问题描述】:

在应用程序中使用 UnityContainer 来访问来自应用程序不同部分(但同一个程序集)的对象的引用是错误的吗?

应用程序 (WPF) 有几个需要相互访问的区域,我使用 UnityContainer 来做到这一点。例如,“主要”区域(这是一个绘图区域)后面有一个演示者,它管理它的所有业务逻辑,我已经在容器中注册了这个演示者实例,以及我需要的应用程序的其他部分要访问它来控制该区域,我通过 UnityContainer 访问它。

不确定这是一个好习惯还是坏习惯。

【问题讨论】:

    标签: unity-container ioc-container


    【解决方案1】:

    不,其实那是它的目的吧。那里有一个名为 ServiceLocator 的库,它运行良好,可以让您切换 IoC 容器,提供查找容器的方法等。我发现它有点矫枉过正,因为我从来不需要换出容器......使用获取容器的静态“工厂”通常就足够了。通常,只有顶级类必须调用它,它负责组装所有依赖项。

    【讨论】:

    • > 嗯,这是我的想法,因为我不只使用容器来自顶级类(模块初始化程序,因为我使用的是 Prism),而且来自同一模块中的其他类也可以相互访问。例如,我在一个类中拥有大部分重要命令,大多数演示者都通过容器引用了该类。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-31
    • 2013-11-14
    • 2011-06-25
    • 2017-01-22
    • 2018-03-17
    • 2011-10-06
    • 1970-01-01
    相关资源
    最近更新 更多