Asp.net mvc 3 ASP.NET MVC中的递归模型绑定失败

Asp.net mvc 3 ASP.NET MVC中的递归模型绑定失败,asp.net-mvc-3,model-binding,Asp.net Mvc 3,Model Binding,模型绑定器无法实例化我的操作参数中的子对象-PublicationSchedule始终为空,Id,名称,区域填充正常。有人能解释为什么会这样吗 行动: [HttpPost] public ActionResult Post(ProductTemplateViewModel viewModel) { //... } 要绑定到的模型: public class ProductTemplateViewModel { [Required] public string Id {

模型绑定器无法实例化我的操作参数中的子对象-
PublicationSchedule
始终为空,
Id
名称
区域
填充正常。有人能解释为什么会这样吗

行动:

[HttpPost]
public ActionResult Post(ProductTemplateViewModel viewModel)
{
    //...
}
要绑定到的模型:

public class ProductTemplateViewModel
{
    [Required]
    public string Id { get; set; }
    [Required]
    public string Name { get; set; }
    [Required]
    public string Region { get; set; }
    [Required] 
    public PublicationScheduleViewModel PublicationSchedule { get; set; }
}

public class PublicationScheduleViewModel
{
    [Required, StringArrayNotEmpty]
    public string[] DaysOfWeek { get; set; }
    [Required, Range(0, 23)]
    public int HoursOfDay { get; set; }
    [Required, Range(0, 59)]
    public int MinutesOfHour { get; set; }
}
HTTP请求表单数据:

id:gf
name:fg
region:Africa
daysOfWeek:Wednesday
hoursOfDay:3
minutesOfHour:4
表格:

<input type="text" id="id" name="id">
<input type="text" id="name" name="name">
<select id="region" name="region">
    <option value="Africa" selected="selected">Africa</option>
</select>       
<input type="checkbox" id="chk(Monday)" name="daysOfWeek" value="Monday">
<input type="checkbox" id="chk(Tuesday)" name="daysOfWeek" value="Tuesday">
<select id="hoursOfDay" name="hoursOfDay">
        <option value="0">00</option>
    <option value="1">01</option>                       
</select>
<select id="minutesOfHour" name="minutesOfHour">
    <option value="0" selected="selected">00</option>
    <option value="1">01</option>
    <option value="2">02</option>                       
</select>

非洲
00
01
00
01
02

字段名需要
PublicationSchedule.daysOfWeek、PublicationSchedule.hoursOfDay和PublicationSchedule.minutesOfHour

您的表单中有哪些内容?请粘贴在这里。你能发布你的实际查看代码,其中包含表单吗?还是直接“硬编码”所有HTML?为什么不使用强类型视图和内置的HTML.helpers?顺便说一下,模型绑定器支持复杂的嵌套视图模型(内置的HTML.helpers支持这一点并生成正确的HTML),您只需相应地命名您的输入:例如:
daysOfWeek
应该是
PublicationSchedule.daysOfWeek
等。