首页 > 解决方案 > 为什么在我的 MVC 应用程序中创建目录不起作用?

问题描述

我正在创建一个 Web 应用程序,并允许我的用户以其中一种形式上传文件。我希望我的方法在启动上传时创建一个文件夹,该文件夹具有传入参数的名称,在本例中为 ID。

public ActionResult Async_Save(IEnumerable<HttpPostedFileBase> files, int? id)
{
    if (files != null)
    {
        string filepath = "/Content/CarData/";
        Directory.CreateDirectory(filepath + id);

        foreach (var file in files)
        {
            var fileName = Path.GetFileName(file.FileName);
            var physicalPath = Path.Combine(Server.MapPath(filepath + id), fileName);
            file.SaveAs(physicalPath);
        }
    }
    return Content("");
}

但是,当用户上传文件时,会引发错误:

System.IO.DirectoryNotFoundException: '找不到路径'C:\GitRepos\MyProject\MyProject\Content\CarData\206\mclaren.jpg'的一部分。

这是准确的,因为我可以看到没有创建目录。谁能帮助我了解出了什么问题?我没有得到Directory.CreateDirectory(filepath + id);该方法的任何错误。

标签: c#asp.net-mvc

解决方案


推荐阅读