0
我已经将保存在数据库中的文件保存到磁盘上的文件中。我会如何修改它,所以方法返回MemoryStream?将文件从SQL Server保存到C#中的内存流中#
public static void databaseFileRead(string varID, string varPathToNewLocation) {
using (var varConnection = Locale.sqlConnectOneTime(Locale.sqlDataConnectionDetailsDZP))
using (var sqlQuery = new SqlCommand(@"SELECT [RaportPlik] FROM [dbo].[Raporty] WHERE [RaportID] = @varID", varConnection)) {
sqlQuery.Parameters.AddWithValue("@varID", varID);
using (var sqlQueryResult = sqlQuery.ExecuteReader()) {
if (sqlQueryResult != null) {
sqlQueryResult.Read();
var blob = new Byte[(sqlQueryResult.GetBytes(0, 0, null, 0, int.MaxValue))];
sqlQueryResult.GetBytes(0, 0, blob, 0, blob.Length);
using (var fs = new FileStream(varPathToNewLocation, FileMode.Create, FileAccess.Write)) {
fs.Write(blob, 0, blob.Length);
}
}
}
}
}
谢谢,请试试看。 – MadBoy
如果有人可以粘贴整个代码,那么其他人可以研究它是如何完成的,这将是非常好的。还有一些年轻的Stackoverflow程序员,他们没有任何关于内存流的经验,也没有从Blob文件中获取数据。 – dovla091