启动下载时“线程终止”运行时错误

时间:2011-09-21 08:41:26

标签: asp.net multithreading download terminate

情况:

在C#网站项目中,我从数据库中获取数据并将所需数据写入excel文件服务器端,然后我想提供下载。

问题:

在代码的末尾开始下载(见下文)我得到一个运行时错误,线程被终止,没有文件可供下载。

我的代码

FileStream fStream = new FileStream(resultFile, FileMode.Open, FileAccess.Read);
byte[] byteBuffer = new byte[(int)fStream.Length];
fStream.Read(byteBuffer, 0, (int)fStream.Length);
fStream.Close();

response.Clear();
response.ContentType = "application/vnd.ms-excel";
response.AddHeader("Content-Length", byteBuffer.Length.ToString());
response.AddHeader("Content-Disposition", "attachment; filename=" + Path.GetFileName(resultFile));
response.TransmitFile(resultFile);
response.End();

我希望有人可以帮助我。在此先感谢:)

1 个答案:

答案 0 :(得分:0)

我使用以下代码下载Excel

   FileStream fs = File.OpenRead(path);
   byte[] data = new byte[fs.Length];
   fs.Read(data, 0, (int)fs.Length);
   Response.Buffer = true;
   Response.ContentType = "application/x-msdownload";
   Response.AddHeader("Content-Disposition", "attachment; filename=" + fileName  );
   Response.BinaryWrite(data);