【问题标题】:.net MVC form to upload file and other fields EF.net MVC 表单上传文件和其他字段 EF
【发布时间】:2018-12-01 09:47:04
【问题描述】:

我有一个 .net MVC EF 应用程序。我需要创建一个表单来将文件和其他字段上传到数据库中(如文件本身和文件描述、类别等)。我在 SQL Server 数据库中有一个带有 FileStream 的表(因此是 varbinary(max))。

表: CREATE TABLE [dbo].[MyDocuments]( [ID] [uniqueidentifier] NOT NULL, [docID] [uniqueidentifier] ROWGUIDCOL NOT NULL, [document] [varbinary](max) FILESTREAM NOT NULL, [docName] [nvarchar](40) NOT NULL, [docLink] [nvarchar](max) NULL, [docCategory] [text] NULL, [docPermission] [nvarchar](15) NULL, [docTeam] [nvarchar](15) NULL, [docAssigmentDate] [date] NULL, [docCompletedDate] [date] NULL, [docArchivedDate] [date] NULL)

型号:

public partial class MyDocument
{
    public System.Guid ID { get; set; }
    public System.Guid docID { get; set; }
    public byte[] document { get; set; }
    public string docName { get; set; }
    public string docLink { get; set; }
    public string docCategory { get; set; }
    public string docPermission { get; set; }
    public string docTeam { get; set; }
    public Nullable<System.DateTime> docAssigmentDate { get; set; }
    public Nullable<System.DateTime> docCompletedDate { get; set; }
    public Nullable<System.DateTime> docArchivedDate { get; set; }
}

我需要一个允许用户输入信息的表单,包括浏览文件以上传并将所有内容提交到数据库表中。所以我需要控制器和视图的帮助。是否有一个很好的示例代码或说明我如何做到这一点。一些例子肯定会有所帮助。谢谢。

【问题讨论】:

  • 你问的是哪个框架? asp.net-MVCAsp.Net-Core-MVC,你的问题不清楚。上传文件与实体框架无关,EF是查询/保存数据到数据库,上传文件是从浏览器接收数据。
  • 这是asp.net -MVC

标签: .net sql-server forms entity-framework model-view-controller


【解决方案1】:
  1. 您的表单必须使用&lt;form method="POST" enctype="multipart/form-data"&gt;&lt;/form&gt;
  2. 在您的操作中,您需要使用IFormFile yourformfiledname 来接收数据(获取字节数组)
  3. 那么你可以做你想做的事,你可以把它保存到你服务器上的一个文件中,或者你可以把它保存到数据库中

抱歉,我的答案是针对 Asp.net-Core
对于asp.net,我想你可以使用HttpContext.Current.Request.File来接收文件

【讨论】:

    猜你喜欢
    • 2017-08-21
    • 2015-06-04
    • 1970-01-01
    • 2011-07-06
    • 2016-07-16
    • 2014-05-19
    • 2013-01-26
    • 2015-08-01
    相关资源
    最近更新 更多