mvvm viewmodel vs asp.net mvc viewmodel

时间:2012-09-20 18:32:27

标签: asp.net-mvc viewmodel

不,这不是重复!

In MVVM viewModel a PersonViewModel wraps a Person model.
In MVC  viewModel a PersonViewModel does/should not wrap a Person.

使用Automapper,否则它将是混合PersonViewModel

SO 上的 mvc alpha极客

视图模型包装模型时,mvc不允许/不需要它的原因是什么?

我的问题的背景是:

当我不将我的模型包装在viewmodel中时,我必须将所有模型属性分配给控制器中的viewmodel属性。太乱了。然后人们告诉使用AutoMapper,这部分很好,部分可怕,因为现在我在AutoMapper配置文件类中有viewModel逻辑,并且我在视图模型中有viewModel逻辑。

现在我必须测试automapper和viewModels。我希望有一个一致的架构,我只测试viewModels,但我必须包装我的模型。

这就是我的问题的起源。

1 个答案:

答案 0 :(得分:1)

完全允许,但它不是MVC结构的一部分。如果您开始使用视图模型包装数据模型,那么您就开始遵循MVVM。

您使用哪种模式取决于许多因素,并且通常很大程度上取决于您的个人偏好。因此,在使用一种模式而不是另一种模式时,没有什么本质上错误的,但这样做的目的是坚持使用某些原则来实现一致的体系结构。