我正在开发一个服务器/客户端应用程序,其中客户端能够上传/下载文件,该文件将作为 varbinay(max) 存储在 SQL Server (2012) 中。问题是我希望将文件直接上传到数据库而不将文件保存在服务器的硬盘上,使用 ReadAllBytes 方法,它只接受一个路径参数。
这是服务器端使用的代码片段:
HttpPostedFile file1 = context.Request.Files[0];
byte[] buffer = new byte[file1.ContentLength];
file1.InputStream.Read(buffer, 0, file1.ContentLength);
这是用户代码,以便从数据库中的数据写入文件:
foreach (var file in list)
{
System.IO.File.WriteAllBytes(path + file.FileName, file.FileContents);
}