代码升级 - 导出到 Excel 2007 及更高版本

本文关键字:高版本 版本 2007 Excel 代码 | 更新日期: 2023-09-27 18:33:29

我在 C# asp.net Web 应用程序中有一些默认功能,可以将网格视图导出到 excel 文件。 此代码在 Excel 2007 中运行良好,但它不会在 2010 中打开。 我需要升级此代码以在两者中工作,或者找到新的解决方案。 任何帮助都会很棒。

当前代码:

            gvReport.Style.Add("font-size", "1em");
            Response.Clear();
            string attachment = "attachment; filename=FileName.xls";
            Response.ClearContent();
            Response.AddHeader("content-disposition", attachment);
            Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
            StringWriter sw = new StringWriter();
            HtmlTextWriter htw = new HtmlTextWriter(sw);
            gvReport.GridLines = GridLines.Horizontal;
            gvReport.RenderControl(htw);
            Response.Write(sw.ToString());
            Response.End();

代码升级 - 导出到 Excel 2007 及更高版本

使用 EPPlus

并将数据导出到 Excel,我假定 gvReport iz GridView 控件,因此请使用绑定到该 GridView 的数据并使用 EPPlus 导出它。

这很容易,在这里你可以找到ashx处理程序的例子,它将返回从DataTable创建的excel文件:

https://stackoverflow.com/a/9569827/351383