带 WPF 的 Prism 6.0 没有依赖注入?
Prism 6.0 with WPF without dependency injection?
我正在用 WPF 开发一个非常小的应用程序,在对 Caliburn.Micro 和 MVVM Light Toolkit 不满意后,我决定使用 Prism 6.0 框架。
我希望能够在我的应用程序中使用区域,但我不想使用 Unity 和依赖注入,因为它对这个应用程序来说太过分了。
如果我想要一个 Shell 这是主要的 window 并且定义了一个区域,该区域将在其一个区域中显示 ViewA 或 ViewB 如何在不使用 Unity 或UnityBootstrapper?我无法弄清楚这一点,因为所有在线示例和学习 material 使用 Unity 或其他一些 DI 系统。
编辑:进一步澄清:我主要试图避免 Unity/DI 因为它迫使我在这个应用程序非常小的地方使用模块,我不会从模块中受益,它只会用于让新人更难理解项目。
Prism 依赖 IoC 才能运行。您必须拥有能够解析 Prism 应用程序中的对象的东西。这可以是内置 DI 容器之一,也可以是使用简单 Activator.CreateInstance.
的自定义实现
无论您使用受支持的 DI 容器还是您自己的实现,都不需要使用模块。如果您不需要它们,请不要使用它们。 Prism 中没有任何内容会强制您使用模块。
我很想知道您觉得 Prism 是什么 "overkill",因为这是一个超载的术语,通常这些评论没有很好地表达出来。
我正在用 WPF 开发一个非常小的应用程序,在对 Caliburn.Micro 和 MVVM Light Toolkit 不满意后,我决定使用 Prism 6.0 框架。
我希望能够在我的应用程序中使用区域,但我不想使用 Unity 和依赖注入,因为它对这个应用程序来说太过分了。
如果我想要一个 Shell 这是主要的 window 并且定义了一个区域,该区域将在其一个区域中显示 ViewA 或 ViewB 如何在不使用 Unity 或UnityBootstrapper?我无法弄清楚这一点,因为所有在线示例和学习 material 使用 Unity 或其他一些 DI 系统。
编辑:进一步澄清:我主要试图避免 Unity/DI 因为它迫使我在这个应用程序非常小的地方使用模块,我不会从模块中受益,它只会用于让新人更难理解项目。
Prism 依赖 IoC 才能运行。您必须拥有能够解析 Prism 应用程序中的对象的东西。这可以是内置 DI 容器之一,也可以是使用简单 Activator.CreateInstance.
的自定义实现无论您使用受支持的 DI 容器还是您自己的实现,都不需要使用模块。如果您不需要它们,请不要使用它们。 Prism 中没有任何内容会强制您使用模块。
我很想知道您觉得 Prism 是什么 "overkill",因为这是一个超载的术语,通常这些评论没有很好地表达出来。