0

这是我的代码,它在名为 Books 的文件夹中上传带有路径的文件,我只希望将路径存储在数据库中,然后根据路径从 Books 文件夹中获取文件。有人可以指导我如何去做.. 下面是我的代码,我正在使用 asp.net mvc 4 和实体框架。

    [HttpPost]
    public ActionResult upload(HttpPostedFileBase file)
    {
        //verify that the file is selected and not empty
        if (file != null && file.ContentLength > 0)
        {
            //getting the name of the file
            var fileName = Path.GetFileName(file.FileName);

            //store file in the Books folder
            var path = Path.Combine(Server.MapPath("~/BOOKS"), fileName);
            file.SaveAs(path);
        }
        return View();
    }
4

1 回答 1

2

如果我对您的理解正确,您想在数据库中存储书籍路径的字符串并将书籍文件存储在 ~/Books 下?

  • 您已经保存到“~/Books”部分了
  • 创建一个包含一些字段(ID、BookTitle、BookPath)的数据库表,将您的模型放入应用程序(无论您选择什么方法;实体框架等),然后编写逻辑代码:
    [HttpPost]
    public ActionResult upload(HttpPostedFileBase file)
    {
        //verify that the file is selected and not empty
        if (file != null && file.ContentLength > 0)
        {
            //getting the name of the file
            var fileName = Path.GetFileName(file.FileName);

            //store file in the Books folder
            var path = Path.Combine(Server.MapPath("~/BOOKS"), fileName);
            try{
                file.SaveAs(path);
                db.Table.Add(new Book{BookTitle: "Whatever", BookPath: path});
                db.SaveChanges();
            }catch(Exception ex){

            }
        }
        return View();
    }
于 2012-11-20T14:24:18.907 回答