繁体   English   中英

C#-从外部托管的应用程序和数据库导出数据

[英]c# - Exporting data from externally hosted app and DB

我正在用C#构建一个Web应用程序,它需要一种设施来导出数据。 我最初是在本地测试时导出到Excel的,并且运行良好,但是由于该应用程序托管在外部服务器上,因此我认为由于Microsoft.Office.Interop.Excel,该操作无法正常工作,对吗?

没错,Microsoft不鼓励Web应用程序中的Excel自动化:

https://support.microsoft.com/zh-CN/kb/257757?wa=wsignin1.0

您仍然可以选择。 如果您需要做的只是导出数据,则仍可以以CSV格式编写文件以进行导出,并且该文件应在Excel中打开。 如果确实需要以Excel格式编写,则可以使用Office的Open XML SDK( https://msdn.microsoft.com/zh-cn/library/office/bb448854.aspx?f=255&MSPPError=-2147217396 )。

另一种选择是保存数据,并让服务器在IIS之外的批处理过程中运行Excel自动化,然后将报告发送给用户。

要使用Microsoft.Office.Interop.Excel,您确实需要安装Office AFAIK。

您可以通过以下几种方法将数据导出到Excel:

  1. 创建一个常规的旧CSV文件。 Excel可以打开和编辑此类文件。 无论如何,以这种方式使数据可用可能是一个好主意,只是因为它是一种可移植的开放格式。
  2. 使用SpreadsheetML创建一个Excel文档。 您将无法通过这种方式使用Excel的所有功能,但是您将能够在文档中添加更多格式信息,并且Excel可以轻松打开它。 我相信其他电子表格软件也支持此功能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM