【发布时间】:2012-05-07 18:24:12
【问题描述】:
我在 C# asp.net Web 应用程序中有一些默认功能,可以将 gridview 导出到 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+ 中打开时遇到什么错误?我的猜测是您遇到了安全问题,而不是 Excel 问题。
-
顺便说一句,您没有将其导出为 OpenXML。您将其导出为 excel(显然不是 2010)可以理解的 HTML。你最好的选择是像 Antonio 建议的 EPP。
标签: c# asp.net export-to-excel