【发布时间】:2016-01-26 05:02:40
【问题描述】:
我的测试应用程序的各个部分都有许多视图模型。
一个视图模型用于用户设置(默认目录、SQL Server、SQL 数据库等),称为MainSettingsViewModel。它包含一个 MainSettings 模型的实例,其中包含配置详细信息。
另一个视图模型在ObservableCollection 中包含计算机列表(包含ComputerName、ComputerDatabase、计算机同步时间等信息)。
另一个包含网络设备的详细信息(名称、位置 IP 等)。
现在我需要使用来自这些不同视图模型的所有上述信息来执行任务。例如,我想 ping NetworkDevices 视图模型中的每个网络设备并将结果发送到 MainSettings 视图模型中的文件,然后通过每个计算机视图模型进行通信并执行一些测试。
我遇到的问题是这些视图模型是在它们各自的视图中构建的,并且没有任何方法可以相互交流它们的信息。
我的视图模型应该如何相互通信?
【问题讨论】:
-
我建议您在开始项目之前阅读更多 MVVM 模式。您显然将模式与某些对象或基类混淆了,没有“多个 MVVM”,您要么拥有 ViewModel、Model(作为层或作为对象)和 View。 “模型”还包括您的业务逻辑,即服务和存储库,而不仅仅是描述您的数据结构的 POCO 类
-
感谢 Will 和 Tseng,当您这样说时,术语显然更有意义。我会努力学习更多。