Как загружать и скачивать файлы из папки сервера - PullRequest
0 голосов
/ 30 марта 2019

Я создаю веб-приложение ASP.net MVC5, хочу разрешить пользователю загружать файл в папку на сервере и сохранять путь в базе данных. также загрузите загруженный файл с сервера на свой компьютер.

  • загрузить файл -> cshtml:

    @Html.TextBoxFor (m => m.attached, new {type = "file"})

создать действие:

  public ActionResult Create([Bind(Include = "op_id,op_name,op_typeid,op_date,budget,op_statusid,sup_id,order_no,order_typeid,attached,notes")] operation operation , HttpPostedFileBase file)
        {
            if (ModelState.IsValid)
            {
                if (Request.Files.Count > 0)
                {
                      file = Request.Files[0];
                    if (file.ContentLength > 0)
                    { var fileName = Path.GetFileName(file.FileName);

                        bool folder_exists3 = Directory.Exists(Server.MapPath("~/uploads/" + file.FileName));
                        if (!folder_exists3)
                        {
                           file.SaveAs(Path.Combine(Server.MapPath("~/uploads/"), fileName));
                        }

                    }
                }
                    db.operations.Add(operation);
                db.SaveChanges();
                return RedirectToAction("Index");
            }
  • скачать файл -> cshtml:

    @Html.ActionLink («операции», «GetFile», новый {name = item.attached})

Действие:

 [HttpGet]
        public FileResult GetFile(string name)
        {
            var FileVirtualPath = "c:/uploads/" + name;
            return File(FileVirtualPath, "application/force-download", Path.GetFileName(FileVirtualPath));

        }

сохраняет имя файла в базе данных, но не сохраняет файл в папке сервера, поэтому не может загрузить его

любая помощь, пожалуйста?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...