我在终端应用程序中正确实现MVVM模式时遇到问题。
该应用程序以指定格式打印通过串口接收的所有数据。
因此Model
部分应负责收集数据,而ViewModel
应负责保持View
格式配置(具有DateTime时间戳,Time时间戳,HEX或ASCII数据的数据)。
但是另一方面,Model
也可以将数据保存到文件中,因此它也需要有关存储格式的信息,因此它应该位于Model
中,而不是ViewModel
中。这个概念正确吗?
另一个问题是Model
需要收集所有接收到的数据。我已经读过ObservableCollection
中不能使用Model
,但是如果没有ObservableCollection
,我有一个问题如何通知ViewModel
和View
数据已更改。
ViewModel
是否应该在ObservableCollection
中保留自己的数据副本?我应该如何正确地将其绑定到ListBox
?