我正在WPF中开发一个非常小的应用程序,我决定在对Caliburn.Micro和MVVM Light Toolkit不满意之后使用Prism 6.0框架。
我希望能够在我的应用程序中使用区域,但我不想使用Unity和依赖注入,因为它对这个应用程序来说太过分了。
如果我想拥有一个Shell,它是一个定义了区域的主窗口,它将在其一个区域中显示ViewA或ViewB,如何在不使用Unity或UnityBootstrapper的情况下执行此操作?我无法解决这个问题,因为所有在线示例和学习资料都使用Unity或其他DI系统。
编辑:进一步澄清:我主要是试图避免使用Unity / DI,因为它迫使我使用这个应用程序非常小的模块,我不会从模块中受益,它只会使项目变得更难了解新的眼睛。答案 0 :(得分:1)
Prism依靠IoC来运行。你必须有一些东西来解析Prism应用程序中的对象。这可以是内置DI容器之一,也可以是使用简单Activator.CreateInstance的自定义实现。
无论您使用支持的DI容器还是您自己的实现,都不需要使用模块。如果您不需要它们,请不要使用它们。 Prism中没有任何东西强迫你使用模块。
我很想知道你觉得棱镜是什么"矫枉过正"因为这是一个超载的术语,通常这些评论都没有明确表达。