c# - 使用 OpenXML 遇到问题
问题描述
在运行时创建 Excel 文档时,出现以下错误:
Excel 在“文件名.xlsx”中发现了不可读的内容。是否要恢复此工作簿的内容?如果您信任此工作簿的来源,请单击是。
我看过很多关于堆栈溢出的帖子,但在这种情况下他们没有帮助我。
下面是我的 C# 代码(尝试)创建 excel 文件:
var workbook = new XLWorkbook();
System.Data.DataTable Table = new System.Data.DataTable();
string AdvId = GlobalEntityID + "-" + AyId + "-" + QtrID;
var CSRExpenditureData = objCsrExp.GetCSRExpendituresFromSP(AdvId); //Get data in list from sp
Table = ListToDataTable(CSRExpenditureData); //Convert list to datatable
Table.Columns.Remove("ID"); //Remove extra columns
Table.Columns.Remove("IsActive"); //Remove extra columns
Table.Columns.Remove("IsDefault"); //Remove extra columns
Table.Columns.Remove("IsSubmit"); //Remove extra columns
if (Table.Columns.Count > 0)
{
var ws = workbook.Worksheets.Add(Table, ReportName);
}
workbook.Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center;
workbook.Style.Font.Bold = true;
Response.Clear();
Response.Buffer = true;
Response.Charset = "";
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", "attachment;filename=" + ReportName + ".xlsx");
using (MemoryStream MyMemoryStream = new MemoryStream())
{
workbook.SaveAs(MyMemoryStream);
MyMemoryStream.WriteTo(Response.OutputStream);
}
注意:请不要将此标记为重复,因为我也尝试过其他帖子
解决方案
推荐阅读
- formatting - 函数或箭头函数开头空行的 eslint 角色
- performance - RMSE 和平均目标变量
- joomla - Joomla - 替换共享链接中的网站图标
- node.js - 单击按钮时如何获取我在文本框中输入的值?
- php - PHP 致命错误:在 GCP 平台上调用未定义函数 curl_init()
- angular - 如何从 Angular 7 typecsript 禁用 FullCalendar 中的上一个按钮
- java - Spring JpaSpecificationExecutor 没有找到类型 Alarm 的属性 findAll
- bazel - 在 Bazel 中打印一种目标
- javascript - 在数组中设置随机位置(JS)
- azure - 如何将 azure 上的数据从一个资源组复制到另一个资源组?