将Excel文件发送到ASP中的HTTP响应

时间:2018-12-29 08:04:20

标签: asp.net excel

我有一个奇怪的问题, 这是我的下载文件页面的代码-

string filePath = (sender as LinkButton).CommandArgument;
Response.ContentType = ContentType;
Response.AppendHeader("Content-Disposition", "attachment; filename=" + 
Path.GetFileName(filePath));
Response.WriteFile(filePath);
Response.End();

因此,当我单击此处的下载链接时,将下载excel文件。 但是,当我使用相同的代码(gridview导出到excel)时。

我可以从gridview生成Excel文件。唯一的问题是它没有从一页发送到http。另一个页面可以将其发送给响应。

 private void DownloadExcel(FileInfo excelFile)
    {
        string filePath = excelFile.FullName;
        Response.ContentType = ContentType;
        Response.AppendHeader("Content-Disposition", "attachment; filename=" + Path.GetFileName(filePath));
        Response.WriteFile(filePath);
        Response.End();
    }

FileInfo中的文件已生成并保存。我可以看到它,也可以使用上面的(第一)代码从其他页面下载它。

我不知道怎么可能。相同的代码无法完成同一任务。

0 个答案:

没有答案