0

我有一个管理 Views 实例的 ViewManager 类。它被 ShellViewModel 和许多其他 ViewModel 使用,并且必须通过构造函数注入。ShellViewModel 注入了 ViewManager。如果我使用工厂创建新的 ViewModel,谁应该为工厂提供 ViewManager 以便将其注入新的 VM?

  1. 容器?(这意味着容器将ViewManager注入工厂,工厂将其注入新的VM)
  2. 壳视图模型?(这意味着 ShellVM 执行类似 factory.Create(this.ViewManager) 的操作

最好的方法是什么?谢谢你们!

4

1 回答 1

1

如果您使用 MVVM,最好的方法是使用 MVVM 框架。要回答您的问题,您希望通过工厂构造函数而不是工厂方法注入视图管理器,因此选项 1。

确实,尽管您不想自己管理视图实例-而是使用已经为您完成所有工作的框架,而不是重新发明劣质轮子。

于 2013-07-02T21:26:24.997 回答