我喜欢我的视图和控制器中缺少"魔术字符串",但这种方法是否有任何缺点?
它似乎没有.我已经阅读过这里和那里的博客条目了.
模型的激增,在极端情况下是每个动作模型,以支持可能与数据模型不直接相关的其他视图属性.例如,如果视图因角色而异,则需要创建新模型以封装数据模型和角色相关设置.通过将数据模型用作视图模型并通过"魔术字符串"向ViewData添加一些设置,可以实现相同的效果.
编辑这不是"避免"强类型视图的理由,而是在选择何时创建新的特定于视图的模型而不是使用现有模型并使用ViewData属性扩展它时给予一些平衡.