用于IEnumerable的mvc3表单

lov*_*ing 7 viewmodel razor asp.net-mvc-3

我有一个模型,我想有一个批量更新页面,但我遇到了麻烦.

我的ViewModel:

public class ApproveView
{

    public IEnumerable<MyObject> ObjectList { get; set; }

}
Run Code Online (Sandbox Code Playgroud)

在我看来,我有:

foreach (var item in Model.ObjectList)
{
    <div>


    <table class="form" width="100%">
        <tr>

            <td>@Html.LabelFor(model => item.Accurate)<br />
            @Html.RadioButtonFor(model => item.Accurate, true) Yes
            @Html.RadioButtonFor(model => item.Accurate, false) No
            @Html.ValidationMessageFor(model => item.Accurate)
            </td>
            <td>
            @Html.LabelFor(model => item.Comments)<br />
            @Html.TextAreaFor(model => item.Comments)<br />
            @Html.ValidationMessageFor(model => item.Comments)
            </td>
        </tr>

    </table>

    @Html.HiddenFor(model => item.ID)
    @Html.HiddenFor(model => item.CreatedOn)
    @Html.HiddenFor(model => item.CreatedBy)
    @Html.HiddenFor(model => item.ModifiedOn)
    @Html.HiddenFor(model => item.ModifiedBy)
   <hr />
}
Run Code Online (Sandbox Code Playgroud)

这会遍历我的对象并打印表单.麻烦的是,所有相同类型的字段都具有相同的名称.因此,例如,我的所有单选按钮都已连接,我只能选择一个.

如何使每个字段的名称唯一并与该对象关联?我是在正确的轨道上还是有更好的方法来做到这一点?

Sam*_*ich 4

检查这篇文章:http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx

您需要为您的实体创建编辑器。

希望能帮助到你。