0

我正在使用 MVC 4,并尝试了上传文件的概念。

这是我的代码:

<div class="complianceSubDiv">
  <div class="complianceLeftDiv">
    @Html.Label("Upload the file")
  </div>
  <div class="complianceRightDiv">
    <input type="file" id="file" name="file" />
  </div>
</div>

我的控制器代码像

[HttpPost]
public ActionResult ManageDocument(DocumentModel documentModel, HttpPostedFileBase file)
{
    //some code
}

但该HttpPostedFileBase文件始终返回 null。我在 StackOverflow 和其他网站上搜索了更多答案,我得到的工作答案是 HttpPostedFileBase变量名称的参数和文件上传控件名称是相同的。所以我在所有方面都使用了相同的名称,但它只返回null

有人帮我吗?

4

2 回答 2

2

最后我得到了它

现在我换了@using (Html.BeginForm())

@using (Html.BeginForm("ManageDocument", "Document", FormMethod.Post, new { enctype = "multipart/form-data" }))

它正在工作!

于 2013-05-16T07:29:02.740 回答
0
    [HttpPost]
    public ActionResult FileUpload(HttpPostedFileBase myFile)
    {
        myFile = Request.Files["file"];
        if (myFile != null && myFile.ContentLength > 0)
        {
            // your code ....
        }
        return View();
    }

您可以使用“Request.Files”来获取选定的文件,上面是代码。

于 2017-01-02T21:16:13.377 回答