我在这里有这个方法:
[Authorize]
[HttpPost]
[ValidateInput(false)]
public void ExportCostMatrixExcel(string GridHtmlExcel, string GridCommunityExcel)
{
Response.ClearContent();
Response.ClearHeaders();
Response.BufferOutput = true;
Response.ContentType = "application/excel";
Response.AddHeader("Content-Disposition", "attachment; filename=Reliquat.xlsx");
Response.Write(GridHtmlExcel);
Response.Flush();
Response.Close();
Response.End();
}
这需要我的html表并将其转换为Excel电子表格,当我尝试打开文件时,收到此错误消息:
Excel无法打开文件'Reliquat.xlsx',因为文件格式 或文件扩展名无效。验证文件尚未存在 已损坏且文件扩展名与文件格式匹配。
为什么会发生这种情况,你可以在下面的链接上看到GridHtmlExcel,它是一个带有colspans的HTML表格,是不是搞乱了它?#/ p>
答案 0 :(得分:1)
从本质上讲,您似乎只是将内容转储到文件中,只是将其重命名为XLSX。但是,该扩展遵循特定的基于XML的架构,这就是为什么它不能很好地发挥作用。
您有几个选择: