我正在使用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
变量名参数和fileupload控件名相同。所以我在所有方面都使用相同的名称,但它仅返回null
。
任何人都对我有帮助吗?
答案 0 :(得分:2)
最后我明白了
现在我替换为@using (Html.BeginForm())
到
@using (Html.BeginForm("ManageDocument", "Document", FormMethod.Post, new { enctype = "multipart/form-data" }))
它正在运作!
答案 1 :(得分:0)
[HttpPost]
public ActionResult FileUpload(HttpPostedFileBase myFile)
{
myFile = Request.Files["file"];
if (myFile != null && myFile.ContentLength > 0)
{
// your code ....
}
return View();
}
您可以使用&#34; Request.Files&#34;要获取所选文件,上面是代码。