所以我在 WPF Prism 应用程序中有两个单独的 View 。如何通过依赖注入(inject)将 ViewModel
的同一个实例注入(inject)到两个 View 中?
最佳答案
(我假设您正在使用 Unity,因为您直接提到了 DI,并且没有说“导入”或类似内容)
嗨,
您必须在容器中将 ViewModel 注册为单例(使用 ContainerControlledLifetimeManager)并像往常一样将其注入(inject)。这可确保您每次请求时都会获得相同的实例。 在这种情况下,一个有效的方法可能是使用命名注册,以防您希望在其他地方注入(inject)相同的虚拟机,但不需要相同的实例。
This article解释了如何执行此操作。
关于WPF Prism 将相同的 View 模型实例注入(inject)两个 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3957383/