-1

我通常使用 Response.Write 将我的报告导出到 Excel 文件。

例如

Response.Clear();
Response.Buffer = true;
Response.AddHeader("content-disposition", "attachment; filename=MyFile.xls");
Response.ContentType = "application/vnd.ms-excel";
Response.Write("<meta http-equiv=Content-Type content=text/html;charset=UTF-8>");
Response.Write("<table>");
Response.Write("<tr>");
Response.Write("<td>");
Response.Write("Hello");
Response.Write("</td>");
Response.Write("</tr>");
Response.Write("</table>");
Response.End();

现在我想导出一个包含多张工作表的 excel 文件。我怎样才能做到这一点?

4

1 回答 1

2

从技术上讲,这不是导出到 excel,而是您发送带有错误标题的 html 以欺骗浏览器以使用 excel 打开此内容。

更好地使用NPOI (xls) 或/和EPPlus (xlsx) 并完全控制您的 Excel 导出,然后您可以创建新工作表等。

更新:在这个 SO 答案中,您可以看到 ashx 处理程序的示例,该处理程序返回从 DataTable 创建的 excel 文件:

C# 创建/修改/读取 .xlsx 文件

于 2012-04-20T11:32:15.443 回答