MVVM中的模型是什么?

时间:2010-12-15 18:10:51

标签: wpf mvvm

应该允许进入模型的东西进入视图模型,即公共属性,IDataErroInfo和INotifyPropertyChanged,那么实际应该进入模型的是什么?

2 个答案:

答案 0 :(得分:31)

模型

Business Data + Business Logic + Business Rules

视图

Application UI

视图模型

Wrapper Over Model which is ealily readable/bindable by View
using minimum Effort/Code.

1) IDataErrorInfo - 应该进入ViewModel  2) INotifyPropertyChanged - 应该进入ViewModelModel(如果需要,不推荐用于型号)
 3) Public Properties - 当然是Model应该拥有它们。

答案 1 :(得分:3)

假设您要为数据加载编写批处理。批处理过程只会访问模型,因此处理与UI分离的业务规则所需的一切都属于模型。 ViewModel可能有一些业务规则,但仅限于UI。

在我正在构建的应用程序中,Views和ViewModel在一个程序集中,而Model在另一个程序集中。该模型没有对View的程序集的引用,只有Model程序集引用了底层数据存储(Linq和Web服务调用的组合)。