关闭。这个问题是opinion-based .它目前不接受答案。
想改进这个问题?更新问题,以便 editing this post 可以用事实和引用来回答它.
3年前关闭。
Improve this question
我的问题是:
ViewModel
支持多个Views
? View
被多个ViewModels
支持? (我相信这个问题的答案是肯定的)。 对于相对较小的模块,您的 View 相对较小的这种情况的最佳做法是什么。所以,在那种情况下,我们应该创建多个
ViewModels
对于每个 View ,或者我们应该使用单个 ViewModel
为同一模块中的所有 View 提供服务。注意:较小模块中的 View 数量限制为 5-6。
最佳答案
这是我对此的看法——
CustomerViewModel
有了客户的详细信息和一些命令,您可以将此 ViewModel 与具有 DataGrid
的 View 一起使用显示所有客户(因此将使用 ObservableCollection<CustomerViewModel>
)并使用相同的 ViewModel 和具有表单的 View 来编辑单个客户的详细信息。 但是 即使在这种情况下,最好创建一个包含其他 subview 模型实例的父 View 模型。
我总是喜欢为单个 View 使用一个 ViewModel,并尝试以这种方式设计我的应用程序。
但是是的,这一切都取决于应用程序以及您如何设计 View 和 View 模型。在 MVVM 中,您首先根据业务逻辑设计模型和 View 模型,然后将它们与您的 View 一起使用。
也看看这个类似的问题 - ViewModel per View or per Model?
关于.net - View 和 View 模型关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11027921/