我在网上读到使用“厨房水槽”模型是不好的做法:
规则#3——视图决定了视图模型的设计。只有渲染视图所需的内容才会通过 ViewModel 传入。
如果一个 Customer 对象有 50 个属性,但一个组件只显示它们的名称,那么我们创建一个只有这两个属性的自定义 ViewModel 类型。
然而,Jimmy Bogard 随后对这有多好的解释给我留下了一些疑问。让我的模型只包含客户列表非常容易,我什至可以使用我的 POCO。
那么现在我可以为网站上的每个页面创建自定义的小视图模型片段了吗?使用 Customer 属性的每个页面都会得到一个,但当然不能共享,因为某些信息是无关的,例如,如果一个页面使用 Age 而不是 Name。两个新的迷你视图模型类对吗?
这非常耗时,并且似乎会导致一百万个小自定义视图模型 - 有人可以详细说明这种方法的实用性以及为什么更简单的方法不好?