我有一个类似于以下展示的WPF应用程序:
viewmodel封装了model,通过INotifyChanged暴露给视图相关属性。视图也绑定到多个ICommand对象,用于处理由视图触发的某些行为。我有一个外部ICommand,其唯一目的是将模型保存到数据库中。
所有我所读到的都表明,视图或viewmodel都不应引用存储库。这就是命令3在viewmodel之外的原因。
我的问题有两个方面。首先,这是合理的架构吗?第二,将模型实例传递给命令3的好方法是什么?
![enter image description here](https://istack.dev59.com/nf2IM.webp)
所有我所读到的都表明,视图或viewmodel都不应引用存储库。这就是命令3在viewmodel之外的原因。
我的问题有两个方面。首先,这是合理的架构吗?第二,将模型实例传递给命令3的好方法是什么?
Command 1
和Command 2
在虚拟机中,而Command 3
在虚拟机之外,这是怎么做到的呢?难道不是所有命令都是在各自的类中单独实现,然后作为虚拟机的属性‘添加’进去的吗?在这种情况下,一个命令如何在虚拟机中,而另一个命令却在虚拟机之外? - hyankov