所以我真的不能使用Excel对象模型来使用服务器端?

我试图开发ac#/ asp.net应用程序从SQL服务器中提取数据,并将其格式化为Excel电子表格。 我一直在练习与Excel对象模型,最近偶然发现了这一点: http : //support.microsoft.com/kb/257757注意事项的服务器端自动化办公

从我的理解,我真的不能使用Excel对象模型? 如果不是什么其他的解决scheme/build议,除了这篇文章中提到的和第三方应用程序,我可以使用?

从那篇文章:

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

这意味着Microsoft不会明确阻止您尝试(许可证允许您尝试)。但是,如果出现问题,由您决定如何解决问题。

有一个更好的select:

从C#创buildExcel(.XLS和.XLSX)文件

这将允许您创build文件进行下载,而无需在服务器端使用Excel自动化。

我可以推荐SpreadsheetGear库,它具有一个托pipedll中的所有Excel函数:

http://www.spreadsheetgear.com/

你可以在服务器端使用Excel自动化。 但是,您将违反许可证,可能遇到安全问题,并且通常会遇到其他奇怪的行为,特别是如果您有多个用户一次使用它。 我build议你不要这样做。

  1. 如果你想写的数据很简单,只要把它作为一个CSV文件

  2. 如果没有,你真的必须写一个电子表格查找第三方组件写入excel文件。 我只知道我头上有一个,那就是Aspose.Cells,但那是相当昂贵的。