0

我正在使用 Visual Studio 处理 C# 中的应用程序,该应用程序可以操作 xlsx 电子表格。使用开放 XML v2.5 和电子表格灯一切正常,但是保存功能会引发此错误:

无法从程序集中加载类型“DocumentFormat.OpenXml.Spreadsheet.SmartTags”

以防万一,这是我要运行的代码。它是带有两个文本框的表单的按钮单击事件,用于检索一些值并保存其他值:

        SLDocument sl = new SLDocument("example.xlsx", "Sheet1");
        int rowNum = Convert.ToInt32(barcodeNum.Text);
        string cellAddr = "C" + barcodeNum.Text; 
        string cellEnvelope = "B" + barcodeNum.Text;
        string cellOutDate = "E" + barcodeNum.Text;
        int envelopeNumber = Convert.ToInt32(envelopeNum.Text);
        string address = sl.GetCellValueAsString(cellAddr);
        MessageBox.Show(address);
        sl.SetCellValue(cellEnvelope, envelopeNum.Text);
        sl.SetCellValue(cellOutDate, DateTime.Now);
        sl.SaveAs("Example.xls");

我查了一下,我猜在开放 XML 版本 2.5 中出了点问题。我想使用 2.0 或更早的版本。当我搜索一个 nuget 包时,唯一可用的是最新版本。如何安装旧版本?有没有办法让我的代码与 2.5 版一起使用?谢谢你。

4

1 回答 1

6

我想你想用

Install-Package DocumentFormat.OpenXml -Version 1.0.0

DocumentFormat.OpenXml 1.0.0 是 Microsoft OpenXML SDK 2.0,网址在这里。下次您可能会查看ClosedXml,它只是 openxml 的包装器,但我发现它更易于使用。

于 2014-10-01T18:41:24.860 回答