从局部视图到控制器获取模型

时间:2013-09-15 20:04:07

标签: asp.net-mvc

是否可以使用@Html.Partial将模型传递给控制器​​?

在视图返回行列表中使用普通<td>,而在表单提交中,部分返回<td>包含完全相同的null

   @using ( Html.BeginForm() )
        {
            <table>
                <tr>
                    <th></th>
                </tr>
                <tr>
                    @for ( int i = 0; i < Model.Rows.Count; i++ )
                    {
                        @*<td class="row">Book @Html.DisplayFor(x => Model.Rows[i].RowNum) @Html.DropDownListFor(x => Model.Rows[i].Selected, Model.Rows[i].Data)  </td>*@
                        @Html.Partial("Row", Model.Rows[i])
                    }
                </tr>
            </table>
            <input type="submit" value="Submit" />
        }

2 个答案:

答案 0 :(得分:1)

Html.Partial呈现局部视图。 如果您的视图已经预期该类型的模型,则可以将其传递。

@Html.Partial("ViewName", Model)

要将值发送到控制器的操作,您可以尝试使用Html.Action

@Html.Action("actionName","ControllerName", new {RowNum = Model.Row[i].RowNum})

您可以使用匿名对象传递值

答案 1 :(得分:0)

您可能想要使用RenderPartial Extension,它应该为您提供所需的信息。