Silverlight 4.0 Silverlight和MVVM中实现最佳性能的最佳实践是什么

Silverlight 4.0 Silverlight和MVVM中实现最佳性能的最佳实践是什么,silverlight-4.0,mvvm,ria,Silverlight 4.0,Mvvm,Ria,我有很多标准化的表-可能超过50个。。。我想知道定义ViewModels的最佳方法是什么——为每个表单创建单个ViewModel,还是为多个表单创建公共ViewModel。因为制作单个表单可能会增加需要下载的数据的大小,并且可能会增加客户端上的数据冗余。i、 e.在每个表单上使用类别,每个表单都有不同的数据集。另一方面,为一组表单创建公共视图模型可能会增加管理工作的复杂性 有没有合适的文章描述这方面的发展。管理整个应用程序以使其提供最佳性能的最佳实践是什么。(从服务器获取最少数据) 感谢您的时间

我有很多标准化的表-可能超过50个。。。我想知道定义ViewModels的最佳方法是什么——为每个表单创建单个ViewModel,还是为多个表单创建公共ViewModel。因为制作单个表单可能会增加需要下载的数据的大小,并且可能会增加客户端上的数据冗余。i、 e.在每个表单上使用类别,每个表单都有不同的数据集。另一方面,为一组表单创建公共视图模型可能会增加管理工作的复杂性

有没有合适的文章描述这方面的发展。管理整个应用程序以使其提供最佳性能的最佳实践是什么。(从服务器获取最少数据)


感谢您的时间和帮助。

视图和模型的数量将增加您的文件的大小,该文件完全在打开时下载,可以。使用过程中的实际性能不同,也取决于其他因素,请尝试使用以了解浏览器的实际性能。可以根据需要下载部分silverlight应用程序,但这是一项高级技术

如果你最关心的是信息,那就去看看吧


我建议对每个视图使用新的ViewModel,或者使用嵌套的Usercontrol,然后在模型之间使用进行通信。

通常,您会希望为每个视图创建一个视图模型。如果两个视图显示相同的数据,并允许用户执行相同的操作,但仅在UI实现上有所不同,则它们可以共享一个视图模型,但目标是保持视图模型的一致性。如果您的视图模型包含操作多个视图的代码,那么您就有可能实现“God-Object”反模式。如果您发现视图模型都共享一定数量的公共代码,请考虑将该代码移动到公共基类。

请记住,两个完全不同的视图模型可以操作相同的模型。如果两个视图显示相同的数据,但每个视图都允许用户以独特的方式与其交互,则可能会出现这种情况

我强烈推荐加里·霍尔的作品。这是一本关于MVVM入门的好书,特别是对于WPF和/或Silverlight