【问题标题】:How can I build a project containing Excel creation in VSTS?如何在 VSTS 中构建包含 Excel 创建的项目?
【发布时间】:2018-10-21 00:10:06
【问题描述】:

我有一个使用 Interop Excel 构建报告的项目。这运行得很好,并且每次都会创建报告。

我现在面临的问题是发布时,我无法运行它,它已构建并发布,但是当我尝试使用此行创建 Excel 文件时出现异常:

var excelApp = new Excel.Application();

例外是下面的那个,我添加了对程序集的多个引用,但我不确定我是否可能缺少一些 COM 引用来运行它。

未处理的异常:System.Runtime.InteropServices.COMException:检索具有 CLSID {00024500-0000-0000-C000-000000000046} 的组件的 COM 类工厂失败,原因是以下错误:80040154 未注册类(来自 HRESULT 的异常: 0x80040154 (REGDB_E_CLASSNOTREG))。

【问题讨论】:

  • 使用互操作怎么样?使用像 Epplus 这样的库来创建 xlsx 文件,而不需要在生产(或构建)服务器上使用 Excel。

标签: excel azure-devops azure-pipelines excel-interop


【解决方案1】:

毕竟,Azure 应用服务不允许 Office。我采用的方式是 OpenXML。

简而言之,我们不能在 Azure WebApp 服务上使用它。 Azure WebApp 服务上没有 MS Office 互操作,Azure WebApp 是沙盒。如果我们想在 Azure WebApp 上写入和读取 excel 文件,我们可以使用 DocumentFormat.OpenXml 作为解决方法。

【讨论】:

    猜你喜欢
    • 2022-01-10
    • 2018-10-05
    • 1970-01-01
    • 2016-10-03
    • 1970-01-01
    • 2018-03-16
    • 2010-11-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多