尝试保存特定Excel文件时出现“System.InvalidOperationException”错误

时间:2015-10-08 06:58:41

标签: c# excel epplus

我使用以下代码访问Excel文件并从中读取,但不断收到System.InvalidOperationException表示发生了错误:

   using (ExcelPackage package = new ExcelPackage(new FileInfo(source)))
        {
            foreach (ExcelWorksheet sheet in package.Workbook.Worksheets)
            {
                Console.WriteLine();
                Parse(sheet);
            }
            package.Save();
        }

        GC.Collect();  

这是方法解析:

        private void Parse(ExcelWorksheet Sheet)
    {
        String name = Sheet.Name;

        using (ExcelWorksheet sheet = Sheet)
        {

            if (name.Equals(SUMMARRY_SHEET))
            {
                int col = get_col(sheet);
                this.parse_summary(sheet,col);
                Console.WriteLine("successful summary sheet parsing - " + DbName);
            }
        }

    }

(Dbname,SUMMARY_SHEET是字符串) parse_summarry()只是一个读取文件中其中一个工作表的方法。

仅使用我正在使用的其中一个文件,每次都使用相同的文件。如果我删除了save命令,程序运行正常,除了文件未正确关闭,然后下一次运行程序将失败(抛出异常),因为文件仍处于打开和使用状态。

0 个答案:

没有答案