服务器上生成Excel文件,无需安装Excel

3

我正在使用 Microsoft.Office.Interop.Excel 并使用 SaveAs 方法生成Excel文件。在安装了Excel的计算机上,这一切都正常工作。然而,我的服务器没有安装Excel。

我该如何生成我的文件?


1
永远不要在ASP.NET应用程序中使用Office Interop。请参阅考虑在服务器端自动化Office时的注意事项 - John Saunders
6个回答

4
如果你使用Interop生成文件,你需要在服务器上安装Excel。然而,微软并不支持在服务器上安装Excel(或Word)。相反,你应该从微软下载Office Open XML SDK,并使用该库生成Excel 2007文档。这个库不需要在服务器上安装Excel:http://msdn.microsoft.com/en-us/office/ee441239.aspx

2
如果您在谈论 MS Office 2010 之前的 Excel,则没有一组可用于创建 Office 文档的 "客户端库"。
"Interop" 程序集只是 .net 包装器,可使 Excel API 可用于 .net 客户端,它们围绕 Microsoft 的非托管代码构建而成。
您将需要在服务器上安装 MSOffice。
编辑:一个类似的问题在这里:Excel dll for Microsoft.Office.Interop.Excel

1

如果你能够承担第三方库的费用,Spreadsheetgear 是一个不错的投资。


0

我推荐使用FileHelpers库来读写Excel(和其他)文件。

"FileHelpers是一个免费且易于使用的.NET库,用于在文件、字符串或流中导入/导出固定长度或分隔记录的数据。"

对我来说效果很好,你可以试试看。


0

如果您对新的Open Office Xml格式(xlsx)感到满意,我强烈建议您查看免费的.Net库EPPlus。它易于使用且具有大量功能。


0
如果您只需要文件中的数据而不需要图形等内容,我建议使用XML或CSV格式。这两种格式都是开放格式,不需要Interop二进制文件。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接