将List <object>从视图传递给控制器​​</object>

时间:2014-04-30 13:49:09

标签: asp.net-mvc-4

我是MVC的新手,我需要一些帮助将List从视图传递到控制器。 我已经在我的控制器中有了List,我把它发送到了视图,我想把它发回去。

首先是我的控制器:

public ActionResult Upload()
{
List<Item> items = new List<Item>();
...
return View("ImportPreview", items);
}

这是我的观点:

@model IEnumerable<Project.Models.Item>
@{
    ViewBag.Title = "Import Preview";
}
<h2>Import Preview</h2>
<h3>Imported Items</h3>

@using (Html.BeginForm("ImportToDB", "ImportItems"))
{
<table id="tableItems" border="1">
    <tr>
        <th>Item Ref</th>
        <th>Item Description</th>
        <th>Item Notes</th>
        <th>Available Qty</th>
        <th>Category Ref</th>
        <th>Time Stamp</th>
        <th>Is Trackable by Variation</th>
    </tr>
   @foreach (var item in Model)
   {
        @Html.HiddenFor(modelItem => item.AccountID);
    <tr>
        <td>
            @Html.DisplayFor(modelItem => item.ItemRef)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.ItemDescription)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.ItemNotes)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.AvailableQty)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.ItemCategoryRef)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.recordTimeStamp)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.IsTrackableByVariation)
        </td>
    </tr>
   }
   </table>

     <input type="submit" name="Import" id="Import" value="Import" />
}

@section Scripts {
    @Scripts.Render("~/bundles/jqueryval")
}

最后这是我在控制器中的最后一部分,我必须收集List&lt;&gt;:

[HttpPost]
public ActionResult ImportToDB(List<Item> items)
{
...
}

问题是控制器中的items始终为null。

有人能告诉我我的错误在哪里。 提前谢谢你:)

非常感谢您的帮助。

0 个答案:

没有答案