【问题标题】:ASP MVC HttpPostedFileBase always returns nullASP MVC HttpPostedFileBase 总是返回 null
【发布时间】:2014-06-29 00:40:22
【问题描述】:

我的 HomeController 中有这段代码

[HttpPost]
public ActionResult NewRequest(int? id, FormCollection form, HttpPostedFileBase   uploadFile)
{
     if (uploadFile != null && uploadFile.ContentLength > 0)
        {
            // extract only the fielname
            var fileName = Path.GetFileName(uploadFile.FileName);
            // store the file inside ~/App_Data/uploads folder
            var path = Path.Combine(Server.MapPath("~/Documents/Files"), fileName);
            uploadFile.SaveAs(path);
        }
        // redirect back to the index action to show the form once again
        return RedirectToAction("Index");    
}

我的 NewRequest 视图是这样的

@using (Html.BeginForm("NewRequest", "Controllers", FormMethod.Post, new { enctype = "multipart/form-data"}))
    {
        <input type="file" name="uploadFile" />
        <input type="submit" value="Upload" />
    }

问题是上传的文件,.txt文件f.x。始终为空。

【问题讨论】:

    标签: asp.net-mvc httppostedfilebase


    【解决方案1】:

    您给定的代码很好。我唯一能想到的情况是您的路由配置可能不正确。

    我已经用这个配置进行了测试,它就像一个魅力。

          routes.MapRoute(
                name: "NewRequest",
                url: "Controllers/NewRequest",
                defaults: new { controller = "Controllers", action = "NewRequest" }
                );
    

    【讨论】:

      猜你喜欢
      • 2019-09-17
      • 2016-04-08
      • 2012-01-23
      • 2017-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多