我的问题是:
Views吗?ViewModels支持View吗?(我相信这个问题的答案是肯定的)。在这种情况下,对于一个相对较小的模块,您的视图相对较小,最佳实践是什么?因此,在这种情况下,我们应该为每个视图创建多个ViewModels,或者使用单个ViewModel为同一模块中的所有视图服务。注意:较小模块中的视图数限制在5-6个.
发布于 2012-06-14 06:58:55
以下是我对此的看法-
CustomerViewModel和一些命令,您可以使用这个具有DataGrid的视图来显示所有客户(因此将使用ObservableCollection<CustomerViewModel> ),还可以使用具有窗体的视图的相同的ViewModel来编辑单个customer.对于单个视图,我总是希望有一个ViewModel,并尝试以这种方式设计我的应用程序。
但是是的,这完全取决于应用程序以及如何设计视图和视图模型。在MVVM中,首先根据业务逻辑设计模型和ViewModels,然后将它们与视图一起使用。
还请看一个类似的问题- ViewModel per View or per Model?
发布于 2012-06-14 06:57:51
那得看情况。例如,如果您有一个包含一系列观察的模型,您可以有相同的两个视图,一个视图有图表,另一个视图有网格。我的意思是你对同一个概念模型有不同的看法。在这种情况下,视图是一个具有不同内容的子视图的页面碎片,最好对所有这些部分都有一个为它们服务的特定视图模型。作为个人经历,我在过去有一个由单个模型提供的清晰视图,但我对此并不满意,您最终遇到的情况是视图模型代码过于复杂,最终需要一个重构器。
https://stackoverflow.com/questions/11027921
复制相似问题