2012-09-20 134 views
-1

不,这不是重复的!mvvm viewmodel vs 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

所以MVC阿尔法怪才SO

什么是不允许/想为MVC,一个视图模型包装模型的原因是什么?

我的问题的背景是这样的:

当我不包住视图模型在我的模型,然后我要分配给控制器的视图模型属性的所有模型属性。这是一个烂摊子。然后人们说要使用AutoMapper,这部分是好的,部分是可怕的,因为现在我在AutoMapper配置文件类中拥有viewModel逻辑,并且在属于那里的视图模型中拥有viewModel逻辑。

现在我必须测试automapper和viewModels。我想有一个一致的体系结构,我只测试viewModels,但是我必须包装我的模型。

这就是我的问题的起源。

+3

它不是重复的,但质量低... ;-) – gdoron

+0

以及如何提高质量的问题? – Elisabeth

+4

我希望我能说,我甚至不明白你要问的问题。祝你的问题队友好运! – gdoron

回答

1

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

您使用哪种模式取决于许多因素,而且往往大部分取决于您的个人偏好。因此,在使用另一种模式时,没有什么内在的错误,但这样做的关键在于坚持这一套原则来实现一致的体系结构。

+0

我更新了我的问题,更多信息!并感谢upvoters! – Elisabeth