在我的控制器中,我在查询字符串中检查了一个articleID,如果它存在,我将呈现编辑视图页面,否则我将呈现添加视图页面。
现在在我的编辑页面中,有时我的ViewData中的某些类可能为空。
我希望在编辑页面中预先填充文本框。
如何将文本预填充到字段中,但同时可以防范空对象/属性?
答案 0 :(得分:1)
类型安全选项是定义两个ViewModel而不是一个。一个用于添加页面,另一个用于编辑页面。如果它们有许多保证永远不会为null的公共数据,那么可以在公共基类上实现这些属性,但这不是必需的。
当您决定显示“添加”视图时,将返回具有相应ViewModel的ViewResult。
当您决定显示“编辑”视图时,将返回带有 ViewModel的ViewResult。
然后,每个View都可以是基于ViewModel类型的强类型视图。
这个other SO answer详细阐述了这种方法。