在 ASP.NET MVC4 中,文件上传视图总是向控制器发送 null。我不知道为什么,我不知道如何解决它并且搜索已被证明是徒劳的......
控制器方法:
[HttpPost]
[ValidateInput(false)]
public ActionResult uploadCustomImage(int id, HttpPostedFileBase file)
{}
看法:
@using (Html.BeginForm("uploadCustomImage", "W", new { id=ViewBag.id }, FormMethod.Post, new { enctype = "multipart/form-data", name="uploadingimage" }))
{
<input name="file" id="file" type="file" />
@Html.SubmitButton()
}
它可以很好地进入控制器,因此路由一切正常。但文件始终为空。我尝试了几种不同的方法:重命名输入/对象,不使用文件参数并调用它: HttpPostedFileBase file = Request.Files["file"]; (结果也为空)
我尝试包含一个 formcollection 作为参数(有和没有不必要的表单元素)。这个文件仍然是空的。
我当然是在按提交之前选择一个文件 =P 我已经尝试了多个文件;具有非常基本的文件名(没有奇怪的 unicode,甚至没有空格)和更奇怪的文件名。大文件,小文件。
一切都是空的!我哪里出错了?