上传文件

时间:2017-08-16 23:14:26

标签: c# asp.net-mvc

我不确定是否有可能这样做。我正在将文件上传到我的MVC Web应用程序中的服务器。目前,它存储在我的项目文件夹中。 这是我的代码工作正常。

public ActionResult Upload(HttpPostedFileBase file)
{
    try
    {
        if (file.ContentLength > 0)
        {
            var fileName = Path.GetFileName(file.FileName);
            var path = Path.Combine(Server.MapPath("~/Documents"), fileName);
            file.SaveAs(path);
        }

        TempData["Message"] = "Upload successful";
        return RedirectToAction("Index");
    }
    catch
    {
        ViewBag.Message = "Upload failed";
        return RedirectToAction("Uploads");
    }
}

enter image description here

现在我需要将文件存储在文件服务器上,为用户提供一个选项来创建目录并将文件存储在他们想要的位置。为此,我需要提供SAVE AS选项。 如何在网络中存储文件服务器以及如何在上传时提供“另存为”选项?

1 个答案:

答案 0 :(得分:1)

无法为用户提供开箱即用的控制级别;但是,您可以允许用户在单独的文本框中指定路径,并使用它来确定目录路径。或者,它听起来像是一些共享的托管商所做的,它提供了他们可以访问的文件夹结构的树视图UI,他们选择了一个文件夹,然后该目录路径被传递回服务器并且文件被写入那个目录。没有内置组件可以完成我提到的所有内容(尽管有树视图控件)。如果有完整的产品,它可能是付费版本。