【发布时间】:2012-04-25 14:07:39
【问题描述】:
我有 read online 说使用“厨房水槽”模型是不好的做法:
规则 #3 – 视图决定了 ViewModel 的设计。只有什么是 渲染视图所需的视图通过 ViewModel 传递。
如果客户对象有五十个属性,但只有一个组件 显示他们的名字,然后我们创建一个自定义 ViewModel 类型,只有 这两个属性。
不过,Jimmy Bogard 随后对这有多好的解释让我有些疑惑。让我的模型只包含客户列表非常容易,我什至可以使用我的 POCO。
那么现在我要为网站上的每个页面创建自定义小视图模型片段了吗?每个使用 Customer 属性的页面都会得到一个,但当然不能共享,因为某些信息是无关的,例如,如果一个页面使用 Age 而不是 Name。两个新的迷你视图模型类对吗?
这非常耗时,并且似乎会导致一百万个小自定义视图模型 - 有人可以详细说明这种方法的实用性以及为什么更简单的方法不好?
【问题讨论】:
-
我同意你的看法。视图模型非常适合组合各种 POCO。但是削减你已经构建的 POCO 只是为了实现 1:1 的 ViewModel 与 View 的比率对我来说似乎也是不必要的步骤。
标签: asp.net-mvc model-view-controller