【发布时间】:2012-12-30 04:46:08
【问题描述】:
我是一名学习 MVVM 的学生,我正在开发一个 WPF 应用程序。 当我必须从 ViewModel_1 实例化 ViewModel_2 时,我的问题就出现了。 ViewModel_2 依赖于在 IoC 容器中注册的 XService。 因此,当我要求容器解析 ViewModel_2 时,它会创建所需的服务,将其注入构造函数,并提供 ViewModel。
我的问题是:我一直读到容器不应被任何类引用,但管理其生命周期的引导程序除外,那么谁将 ViewModel_2 提供给 ViewModel_1?
我能想到的唯一解决方案是在 ViewModel_1 的 ctor 中放置一个 Lazy,并在需要时访问它,但是如果我要从那里管理多个 VM 怎么办??
我希望你能帮助我。 非常感谢,新年快乐! =)
【问题讨论】:
标签: c# mvvm inversion-of-control ioc-container