将MVC中任何类型的多个选择绑定回模型

时间:2013-03-17 22:09:48

标签: asp.net-mvc model model-binding html.dropdownlistfor

我有一个包含List的模型,每个Schedule都有一个List,所以在我看来我有:

@foreach (Schedule sched in Model.Schedules)
{
    @Html.DropDownListFor(x => x.SelectedCustomer, new SelectList(sched.Customers, "Id", "FirstName"), "Select A Customer", new { @class = "SelectedCustomer" })
}

所以基本上这是为所有计划输出一个下拉/选择标记,在下拉列表中是我在SelectedCustomer字段中找到的客户列表。当我将其发布回(HttpPost)控制器时,我的选择都没有绑定到我的模型。但是,如果我是模型绑定一个简单的文本框,它可以工作,但任何像对象列表一样复杂的东西都不会在回发上绑定,MVC中建议的方法是什么来取回所有这些下拉框的选定值?

1 个答案:

答案 0 :(得分:0)

好吧,我从来没有找到过绑定到模型的方法,但我发现我可以放置一个像SelectedCustomer的整数数组,如

int[] SelectedCustomer

并为每个下拉列表购回了所选的表单集合值。