如何使用Mono Develop在linux上创建Excel文件

时间:2012-08-28 02:05:33

标签: .net linux excel

我目前正在开发一个与Excel互操作的C#.net项目(在VS2010中)。但在某些时候,我将不得不通过Mono Develop将项目放到我们的Linux服务器上。

我听说Excel互操作在Mono中不起作用。无论如何,我可以使用Mono通过代码创建和操作Excel文件吗?

非常感谢!

编辑:理想情况下,我想要一种免费的方式,仍然能够支持格式化。我真的不需要读访问权限,只能写。

2 个答案:

答案 0 :(得分:2)

你真的需要使用Excel本身吗?这里的问题不在于Excel不能与Mono一起使用,因为Excel不能与Linux一起使用。您可以使用Wine做一些hacky,以便在Linux上运行Excel和相关的COM互操作,但如果您打算使用Linux,我可能会建议完全放弃Excel。有几个库用于以更跨平台的方式操作.xls和.xlsx文件:an entire StackOverflow question致力于使用Excel文件而不使用Excel互操作。

现在,如果您所做的不仅仅是创建文件 - 例如,如果您想使用Excel的计算引擎 - 那么您可能必须使用Excel本身。在这种情况下,我看到三个明确的选项:(a)在Wine下运行Excel(也可能是你的应用程序),并希望它有效,(b)使用Excel for Mac并从OS X运行服务器,或(c) )使用Windows。我不知道选项(a)和(b)是否允许正确的COM互操作,虽然我希望Wine尝试复制所有的COM和Office for Mac有某种代替COM互操作的API。第三种选择可能有两种:您可以使用Windows Server来运行您的网站,或者您可以将一台计算机或VM用于Excel计算引擎,并与Web服务器代码的其他部分联系。

答案 1 :(得分:0)

我用MOMA检查了excelpackage.dll,但没有报告任何警告和错误。 这可能适用于未测试的单声道。它也是免费的GPL。 http://excelpackage.codeplex.com/