Asp.net mvc 4 需要使用asp.net mvc4将多行数据插入数据库的帮助吗

Asp.net mvc 4 需要使用asp.net mvc4将多行数据插入数据库的帮助吗,asp.net-mvc-4,Asp.net Mvc 4,我用ASP.NETMVC4做了一个简单的应用。 我正在尝试向数据库中插入多行数据。我所做的工作对于单行来说很好。 插入单行,但在多行中我遇到问题。。。控制器中的表单集合对象未将数据从客户端传递到服务器端捕获,而且循环工作不正常 我的看法是: <table style="width:100%" id="tbldata"> <tr> <th>Document </th> <th>Sem/Year(if

我用ASP.NETMVC4做了一个简单的应用。 我正在尝试向数据库中插入多行数据。我所做的工作对于单行来说很好。 插入单行,但在多行中我遇到问题。。。控制器中的表单集合对象未将数据从客户端传递到服务器端捕获,而且循环工作不正常

我的看法是:

<table style="width:100%" id="tbldata">
    <tr>
        <th>Document </th>
        <th>Sem/Year(ifapplicable)</th>
        <th>File</th>

    </tr>
@for (int i = 0; i < 7; i++ )
{

    <tr class="document">
        <td style="width:40%">@Html.DropDownListFor(m => m.selectdocId,                    ViewBag.selectdocId as IEnumerable<SelectListItem>,"--Select--", new { @id="docid" +i , @class="Doctype"})</td>
        <td style="width:10%">@Html.TextBoxFor(m => m.sem, new { @id="sem" +i, @class="semid"})</td>
        <td style="width:40%"><input type="file" multiple="" name="file" value="Browse" /></td>
    </tr>

}

  </table> 
我的控制器是:

  public ActionResult display(FormCollection collection, IEnumerable<HttpPostedFileBase>file )
    {
        for(int i=0; i<7; i++)
        {

          int semid = Convert.ToInt32(collection["sem" + i]);
          int docid = Convert.ToInt32(collection["docid" + i]);

            tbldocumentdetail doc = new tbldocumentdetail();
            doc.sem = Convert.ToInt32(semid);
            doc.selectdocId = Convert.ToInt32(docid);
            db.tbldocumentdetails.Add(doc);
             db.SaveChanges();
           }

             foreach (var item in file)
            {
                if (item == null && item.ContentLength < 0)
                {
                    ModelState.AddModelError("file", "please uploded your file");
                }
                else
                {
                    var filename = Path.GetFileName(item.FileName);
                    var path = Path.Combine(Server.MapPath("~/Content/savedoc"),           filename);
                    item.SaveAs(path);

                    tbldocumentdetail doc = new tbldocumentdetail();
                     doc.fileName = filename;
                     string a = "~/Content/savedoc" + filename;
                     doc.path = a;
                    db.tbldocumentdetails.Add(doc);
                    db.SaveChanges(); 
                     }

为此,可以使用IEnumerable作为POST操作参数,而不是使用表单集合。你可以参考下面的链接