我有一个用户模型和一个源自它的“AddUser”视图。
用户模型还包含IList类别中的类别列表。
现在当我在AddUser视图中渲染局部视图时,我得到的对象引用没有设置为对象错误的实例。
用户模型:
public class User
{
public int Id { set; get; }
public string Name { get; set; }
public IList<Categories> Categories{ get; set; }
}
AddUser查看:
@Models.User
@using(Html.BeginForm())
{
@Html.EditorFor(x => x.Name)
@Html.RenderPartial("_AddCategory", Model.Categories[0])
}
请帮忙。
由于
编辑: _AddCategory查看:
@model Models.Categories
@using (Html.BeginForm())
{
<fieldset>
<legend></legend>
@Html.TextBoxFor(model => model.CategoryName)
@Html.TextBoxFor(model => model.CategoryDescription)
</fieldset>
}
答案 0 :(得分:1)
您是否尝试在构造函数中初始化集合?
public class User
{
public User()
{
Categories = new List<Categories>();
}
public int Id { set; get; }
public string Name { get; set; }
public IList<Categories> Categories { get; set; }
}
另外,为什么要将第一个类别从“类别”属性传递到“添加类别”部分?它不是一个空的Category对象,因为你要添加一个新对象吗?
@Html.RenderPartial("_AddCategory", new Categories())
在命名标准方面,我可能会更改您的命名标准,并将您的对象命名为singular,即Category。然后你的财产变成:
IList<Category> Categories { get; set; }