【问题标题】:SoftArtisans ExcelWriter returning duplicate key error when attempting to open xlsx fileSoftArtisans ExcelWriter 在尝试打开 xlsx 文件时返回重复键错误
【发布时间】:2015-06-15 16:14:39
【问题描述】:

我们正在使用 SoftArtisans ExcelWriter 来打开和处理来自各种 Excel 文件的数据。一个文件最近开始给我们以下错误: An item with the same key has already been added.

我已尝试使用 Excel 修复选项来修复文件和提取数据,但修复后的文件和原始文件都继续返回相同的错误。

堆栈跟踪,正如承诺的那样:

System.ArgumentException was unhandled by user code
HResult=-2147024809
Message=An item with the same key has already been added.
Source=mscorlib
StackTrace:
   at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
   at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
   at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
   at SoftArtisans.OfficeWriter.ExcelWriter.XMLModel.᝜.ᜀ()
   at SoftArtisans.OfficeWriter.ExcelWriter.XMLModel.᝜..ctor(᜴ A_0, ᝉ A_1)
   at SoftArtisans.OfficeWriter.ExcelWriter.XMLModel.ᝂ.ᜀ()
   at SoftArtisans.OfficeWriter.ExcelWriter.Model.ᜉ..ctor(ល A_0, រ A_1, ᝣ A_2, ᡆ A_3)
   at SoftArtisans.OfficeWriter.ExcelWriter.Model.ល..ctor(ᝣ A_0, ᠐ A_1)
   at SoftArtisans.OfficeWriter.ExcelWriter.Model.ោ..ctor(ᝣ A_0, IEnumerable`1 A_1)
   at SoftArtisans.OfficeWriter.ExcelWriter.XMLModel.᝚..ctor(᜔ A_0, ᝘ A_1, ᝂ A_2, ឤ A_3)
   at SoftArtisans.OfficeWriter.ExcelWriter.XMLModel.᝘.ᜄ()
   at SoftArtisans.OfficeWriter.ExcelWriter.XMLModel.᜔.ᜀ()
   at SoftArtisans.OfficeWriter.ExcelWriter.XMLModel.᜔..ctor(Stream A_0, String A_1, ᝻ A_2)
   at SoftArtisans.OfficeWriter.ExcelWriter.ᜊ.ᜀ(Stream A_0, String A_1, Boolean A_2)
   at SoftArtisans.OfficeWriter.ExcelWriter.ᜊ.ᜀ(Stream A_0, Boolean A_1)
   at SoftArtisans.OfficeWriter.ExcelWriter.ExcelApplication.Open(Stream stream)

【问题讨论】:

  • 您使用的是什么版本的 ExcelWriter?最新版本会发生这种情况吗?
  • SoftArtisans 有几个已知的错误。这是其中之一,并且有多种复制方式,我将评论其中一种:如果您有一个带有 namedRange 的工作表(有时它有一个内部 namedRange,如 PrintArea,所以请检查一下)如果您删除该工作表,则 namedRange 将被“传递”到下一个工作表而不是被删除当您尝试创建一个与已删除工作表同名的新工作表时,系统会抱怨因为“下一个”工作表已经具有类似的命名范围

标签: c# excel officewriter


【解决方案1】:

听起来在您或 SoftArtisan 的代码中某处有一个 System.Collections.Generic.Dictionary,其中添加了两个具有相同键的对象。

【讨论】:

    猜你喜欢
    • 2019-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-17
    相关资源
    最近更新 更多