Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Design patterns 模型从何处获取MVVM中的数据?_Design Patterns_Mvvm_Silverlight 4.0 - Fatal编程技术网

Design patterns 模型从何处获取MVVM中的数据?

Design patterns 模型从何处获取MVVM中的数据?,design-patterns,mvvm,silverlight-4.0,Design Patterns,Mvvm,Silverlight 4.0,我目前正在研究MVVM模式。我很清楚模型包含类的概念,视图只是数据的可视化表示,而ViewModel是连接模型和视图并执行所有操作的层 但我仍然不清楚模型从哪里获得数据?因为它只包含属性。因此,即使我们使用WCF填写数据,问题仍然存在: 是否需要任何中间类在模型中填写数据,或者这项工作也通过ViewModel执行 Model将数据提供给ViewModel,ViewModel将格式化数据提供给View,View只表示数据。但是模型是从哪里获得数据的呢?用一种更抽象的方式思考模型。“模型”通常是一个

我目前正在研究MVVM模式。我很清楚模型包含类的概念,视图只是数据的可视化表示,而ViewModel是连接模型和视图并执行所有操作的层

但我仍然不清楚模型从哪里获得数据?因为它只包含属性。因此,即使我们使用WCF填写数据,问题仍然存在:

是否需要任何中间类在模型中填写数据,或者这项工作也通过ViewModel执行


Model将数据提供给ViewModel,ViewModel将格式化数据提供给View,View只表示数据。但是模型是从哪里获得数据的呢?

用一种更抽象的方式思考模型。“模型”通常是一个或多个类,允许您获取/处理填充ViewModel所需的数据。它可以是存储库、类层次结构等

例如:

我有一个显示客户详细信息和订单的ViewModel。出于示例的考虑,我没有使用域模型,只是使用一些DAO。要填充ViewModel,我需要客户数据和订单数据。此数据由客户DAO和订单DAO访问。我通过id获取客户,然后通过id获取客户的订单。我将所有这些数据添加到ViewModel以供显示。在本例中,我的“模型”是两个DAO,或DAO的包装器


这是使用存储库而不是DAO的另一个例子。

这是否意味着我们需要一个将数据填充到模型中的中间类?