1

我已经将使用 SOAP 工具箱(不再受支持)对 Web 服务进行一些调用的 Excel 2003 电子表格转换为使用 VSTO 的 Excel 2010。

电子表格工作得很好,并且(主要)做了它应该做的事情,现在我想从网站上向用户提供它。

我原以为它应该与提供仍然可用的 2003 版本相同,所以我基本上复制了 Excel 2003 电子表格的下载按钮,它应该可以正常工作。

当我为 2010 电子表格尝试此操作时,我收到一个 Excel 错误说明

“Excel 在“SpreadSheet_name.xlsx”中发现了不可读的内容。是否要恢复此工作簿的内容?如果您信任此工作簿的来源,请单击“是”。

Excel 然后修复了问题,电子表格可以正常使用。

当我从完成下载的源文件夹中打开电子表格时,它会毫无错误地打开,就像修复上述错误并保存文件一样。

这是用于当前 Excel 2003 下载按钮的代码 -

Response.WriteFileAsAttachment("application/ms-excel", Server.MapPath("~/pathname/Spreadsheet_2003.xls"), 8192);
Response.End();

这就是我为 2010 下载按钮单击所拥有的,上面是 Excel 2010 的更新 MIME 信息 -

Response.WriteFileAsAttachment("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", Server.MapPath("~/pathname/Spreadsheet_2010.xls"), 8192);
Response.End();

我已经尝试了各种论坛上建议的几件事,并且都得到了相同的结果。

我正在使用通过 VS 2010 运行的 C# 和 ASP.Net 来测试这个,所以有人建议 VS 中受限的 IIS 可能是个问题?

任何帮助或建议将不胜感激。

谢谢,乔治。

4

1 回答 1

0

我们使用的远程访问通信存在问题,导致下载出现此问题。这不是公司会解决的问题,所以我们必须忍受它并解决它。:(

于 2012-06-27T10:23:58.553 回答