当我在模型中有一个null类时,如何在MVC中使用textboxfor渲染文本框。
例如,我有以下我用作我的模型
public class ClassOne
{
public string classOneProperty {get;set;}
public ClassTwo classTwoObject {get; set;}
}
public class ClassTwo
{
public string classTwoProperty {get;set;}
}
所以我有一个一级值表,用户点击编辑ClassOne的现有项目。在ClassOne中,对象ClassTwo为null,因为它没有在表中项的初始创建时设置,所以当我尝试@Html.TextBoxFor(m => m.classTwoObject.classTwoProperty)
时,我得到一个空引用错误。
我如何使用TextBoxFor编辑其中包含空对象的字段,因为我仍然希望它们在回发时绑定到模型?
谢谢, DMAN
答案 0 :(得分:2)
当您返回ClassOne
时,需要将classTwoObject
属性初始化为new ClassTwo()
-Like Brook如上所述。打败我。
答案 1 :(得分:1)
您可以创建初始化classTwoObject
的构造函数public class ClassOne
{
public string classOneProperty {get;set;}
public ClassTwo classTwoObject {get; set;}
public CLassOne()
{
classTwoObject = new ClassTwo();
}
}
或者只是将其内联初始化
new ClassOne(){classTwoObject=new ClassTwo()};