ファイル名がmysqlにBLOBとして保存されています。 が正常にアップロードされています。今我々はそれを完璧に動作するfronグリッドビュー をダウンロードしたい。しかし問題は、開こうとしたときに をダウンロードした後、ファイル形式のエラーが表示されることです。我々はオフィス文書とpdfのみを取り扱っている です。Aspxを使用してMysqlからBLOBファイルをダウンロードする
try
{
int did = Convert.ToInt32(e.CommandArgument);
DataSet path = download.GetresourcePath(did);
byte[] fileFromDatabase = null;
DataRow row = path.Tables[0].Rows[0];
fileFromDatabase = (byte[])row["UPLFILE"];
string filename = (string)row["FILENAME"];
if (fileFromDatabase.Length > 0)
{
Response.Clear();
Response.Buffer = true;
Response.ContentType = string.Format("application/{0}",
Path.GetExtension(filename).Substring(1));
Response.AddHeader("content-disposition",
string.Format("attachment;filename={0}", filename));
Response.BinaryWrite(fileFromDatabase);
Response.Flush();
Response.End();
}
}
catch (Exception)
{
return;
}
-
ここ
- でしたが、我々は、グリッドビューからそれを取得したファイルのIDです。
- filenameは、データベースから取得するファイルの名前です。
- fileFromDatabaseはMysqlのBLOBファイルで、Byteに変換しました。
私は何を間違えているのですか?
ファイルサイズは最大4MBです。いずれにしても、ファイル形式のエラーを表示する理由を教えてください。 – Aaraadhana