-1

我试图在 asp.net 中将 10GB 文件召集到 Byte 我正在执行以下代码:

 if (FileUpload1.FileName != "")
            {        
                Byte[] MediaBytes = new 
  byte[FileUpload1.PostedFile.InputStream.Length];        

            }

在那里我添加了 FileUpload1 以浏览任何大小 10GB 或任何大小的文件。我无法将大文件转换为字节并将其保存到 SQL Sever。我还在 web.config 中添加了这个代码,它帮助我将 640MB 转换为字节,并且代码正在处理 640MB 文件我也想在字节中转换大文件。我在 web.config 中使用了 ISS6 下面的代码

<httpRuntime executionTimeout="9999" maxRequestLength="2099999999"/>

对于 iss7,我在 web.config 中使用了这个额外的代码,如下所示:

<system.webServer>
    <security>
      <requestFiltering>        
        <requestLimits maxAllowedContentLength="1024000000"/>
      </requestFiltering>
    </security>
  </system.webServer>

请帮助我如何轻松快速地转换 Byte 中的大文件。请给我解决方案我该怎么做。

4

1 回答 1

1

这是将流转换为字节的代码。请在使用代码之前继续阅读。

var file = FileUpload1.PostedFile;
var imgStream = file.InputStream;
var length = file.ContentLength;
var data = new byte[length]; 
imgStream.Read(data, 0, length);

// data is the one you need.

首先,你不应该在数据库中存储大文件,它会杀死 Web Sever 尤其是 SQL Server。

相反,您应该只将文件存储在文件系统中,并将文件路径保存在数据库中。

这是我最喜欢的之一——

在数据库中存储大文件(10 MB)是一种不好的做法吗?

于 2013-07-28T18:44:58.503 回答