我的MVC应用程序中有两个模型
主要模特
public class MainModel
{
public string desc{get;set;}
public List<SubModel> subModelView{get;set;}
}
public class SubModel
{
public string Id{get;set;}
public string desc {get;set;}
}
在我的视图中使用mainmodel
查看:
@using ViewModel.MainModel
@using (Html.BeginForm())
{
<table>
<tr>
@Html.EditorFor(model => model.desc)
<tr>
@if(Model.subModelView!= null)
{
@foreach (SubModel subview in Model.subModelView)
{
<tr>
<td>
@Html.Label("lblFieldHeader", @subview.desc)
</td>
<td>
@if (subview.ID == "TXTBOX" || subview.ID== "NUM_TXTBOX")
{
@Html.TextBox("TXTBOX", @subview.desc)
}
</td>
</tr>
}
}
<p>
<input type="submit" value="Create" />
</p>
}
在控制器中:
[HttpPost]
public ActionResult Create(MainModel ruleViewModel)
{
//I'm adding it to the database
return Json(result, JsonRequestBehavior.AllowGet);
}
我面临的问题是当模型传递给控制器时,MainModel中的值存在,但其中的SubModel列表为null。但是当我在去控制器之前进行调试时,列表的计数是2。
我在这里想念什么?