Web应用程序中的Excel 2003-2010 compability C#自动化库

我刚刚编写完成了将数据导出到excel的报表模块的代码,并意识到我使用Excel库的库不支持excel 2007-2010以及许多其他额外的关键问题,如字体,模板,横向打印页面,而不是看起来像多年来不支持图书馆。 其他库支持2007年,但不支持2003年。哪个库支持所有2003+版本? 并有一个简单而丰富的API

微软COM库不支持Web应用程序,因为微软警告那里总结:

“Microsoft目前不推荐,也不支持从任何无人值守的非交互式客户端应用程序或组件(包括ASP,ASP.NET,DCOM和NT服务)中自动化Microsoft Office应用程序,因为Office可能performance出不稳定的行为, /或Office在此环境中运行时出现死锁。“

我的应用程序是与.NET 4的asp.net mvc3,所以我在巨大的问题。 我在网上search了几天,每个人都报告了同样的问题,从来没有人报告他find了一个体面的解决scheme

也许你find了一个?


进度更新: @cdiazalbuild议'EPPlus',我查了一下 ,他们说他们不支持2003.其他人呢?

我从来没有使用过,但是其他很多人都提到了Aspose.Cells for .NET

您可以使用EPPlus

但它只创buildXLSx文件

如果您已经安装了兼容包,您可以从Excel 2003中打开它。

在讨论部分,我发现这个代码保存为XLS

 ExcelPackage pck = new ExcelPackage(); ExcelWorksheet ws = pck.Workbook.Worksheets.Add("Demo"); ws.Cells["A1"].LoadFromDataTable(dataTable, true); FileStream aFile = new FileStream("c:\\data\\excelfile.xls", FileMode.Create); byte[] byData = pck.GetAsByteArray(); aFile.Seek(0, SeekOrigin.Begin); aFile.Write(byData, 0, byData.Length); aFile.Close(); 

刚刚find一个看起来不错的图书馆,但这不是免费的

图书馆是infragistics