导出到Excel不在主服务器上工作

时间:2013-09-11 06:42:09

标签: c# asp.net excel export-to-excel

嗨伙计我在这里有一个问题,关于在asp.net中导出到Excel,我将Webgrid数据导出到Excel工作表,它在localHost上正常工作但在主服务器上工作正常,即使它是部署在主服务器上。

我正在使用 Microsoft.Office.Interop.Excel.Application 来生成Excel工作表。

当我在主服务器上单击生成Excel的按钮时,我收到以下错误 -

  

无法导出 - 检索CLSID为{00024500-0000-0000-C000-000000000046}的组件的COM类工厂失败,原因是   以下错误:80040154。 ** 类未注册

我用google搜索解决方案bbut找不到可以解决我问题的方法我在某处找到了我需要在我的主服务器上安装Excel以使这项功能正常工作。这是解决方案还是他们的任何插件可以帮助为了解决这个问题并导出到MainServer上的excel工作.. 请帮忙

2 个答案:

答案 0 :(得分:1)

我建议你阅读server-side Automation of Office

从主服务器获取excel数据并不是一个好主意。我建议您改用Open XML。

您还可以查看第三方工具,例如 EPPlus

答案 1 :(得分:1)

简短回答是 - 是的,这是必要的。

很长的答案是不建议这样做。您的Web服务器由网络服务或其他一些甚至没有权限运行excel的有限权限帐户运行。

将这些权限扩展到运行excel可能会导致安全性降低,并且可能会对您的Excel服务器造成损坏(例如恶意宏或类似内容)。

Link Kyle提供了一个很好的资源,可以找到更多相关信息。 如果可能,请尝试移动到OpenXML或其他库。