Package.Workbook.Worksheets显示了System Argument Exception

问题描述 投票:0回答:1

我遇到了特定电子表格的问题。以下代码适用于许多电子表格。在这张特殊的纸上,当它击中foreach并试图进入package.Workbook.Worksheets时它会死亡。

protected void ParseExcelFile(Stream stream)
{
    var package = new ExcelPackage(stream);
    foreach (var sheet in package.Workbook.Worksheets.Where(s => CategoryTabNames.IsCategoryTabName(s.Name)))
    {
         //doing things
    }
}

如果我查看Visual Studio中的Worksheets属性,它会说

系统参数异常

当调用方法捕获抛出的异常时,异常消息是

未找到请求的值“基线”。

我对下一步该去哪儿感到有点失落。该文件可以通过Excel打开。谢谢您的帮助。

c# excel epplus
1个回答
0
投票

事实证明,问题在于EPPlus如何处理垂直对齐。根据Open Office XML的规范,“baseline”应该是垂直对齐的可接受值。但是,EPPlus不会处理这个问题,所以它抛出异常。我们向开发人员发出推送请求,解释修复问题。

我认为我们之前没有遇到过这个问题,因为基线可能与none或空白相同。我认为应用程序用户通常使用的Sharepoint Excel编辑器只会将其留空,但有人必须使用Excel编辑器编辑工作表,而Excel编辑器使用此“基线”值。

© www.soinside.com 2019 - 2024. All rights reserved.