1

我的 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 文件 fx 始终为空。

4

1 回答 1

0

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

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

      routes.MapRoute(
            name: "NewRequest",
            url: "Controllers/NewRequest",
            defaults: new { controller = "Controllers", action = "NewRequest" }
            );
于 2014-05-11T23:38:33.477 回答