【问题标题】:mvc file upload and database insertmvc文件上传和数据库插入
【发布时间】:2014-11-04 08:32:19
【问题描述】:

我只是在 .net 中使用 VS 2013 了解 MVC。

我需要一些关于上传文件(这很容易)以及将有关该图像的数据插入数据库的指导。具体来说,我想允许最终用户输入关于正在上传的文件的描述、标题等。在后端,我还想向元数据添加“创建日期”、“文件路径”、“类别”和文件名以及其他一些有助于在意见。我不想在数据库中插入文件,而只是使用生成的 HTML 中的路径指向物理文件,以便最终用户可以查看或下载它。 正在使用多种文件类型,音频、视频、文档、图像。

我可以让文件上传工作,但编写控制器以接受文件和最终用户输入,然后还将我需要的其他字段添加到用户永远看不到的数据库中是我卡住的地方。将文件上传与用户字段和后端数据混合在一起,让我对如何让所有部分协同工作感到困惑。

所以简而言之,在同一个视图、控制器和模型中获取文件上传 + 用户输入 + 非用户输入值是我需要指导的。

【问题讨论】:

  • 您尝试了哪些方法,但它是如何不起作用的?我们很乐意为您的代码提供帮助,但只能提供有限的代码描述帮助。

标签: asp.net-mvc database file-upload


【解决方案1】:

您必须以多部分的形式上传您的图片和数据。

在您看来,您将创建一个使用“multipart/form-data”编码的 POST 表单,然后您可以在表单正文中包含模型数据和文件上传控件的输入。提交时将创建一个多部分表单,其中一部分包含二进制文件,另一部分包含您的数据。

在控制器操作方面,您将收到类似于操作的数据

public ActionResult PostFile(MyModel model, HttpPostedFileBase file) {...}

关于 SO 的帖子很多,更详细,所以我不会详细介绍。

【讨论】:

  • 这听起来像是我可能需要的。我只是在做文件或表单请求。谢谢
猜你喜欢
  • 2012-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-25
  • 1970-01-01
  • 1970-01-01
  • 2021-07-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多