C#Epplus保存和另存为错误

Pra*_*eep 5 c# excel

            if (!File.Exists(this.savePath.FullName + "\\" + value + ".xlsx"))
            {
                using ( ExcelPackage exp = new ExcelPackage(finfo))
                {
                    //ExcelPackage exps= new ExcelPackage(pather);
                    ExcelWorksheet exlss = exp.Workbook.Worksheets[timing];
                    exlss.Cells["A1"].LoadFromDataTable(dt, true, TableStyles.Medium9);
                    exp.SaveAs(existing);

                }
            }
            else if (File.Exists(this.savePath.FullName + "\\" + value + ".xlsx")) {
                timing = "2011";
                using (ExcelPackage exp = new ExcelPackage(existing))
                {

                    //ExcelPackage exps= new ExcelPackage(pather);
                    ExcelWorksheet exlss = exp.Workbook.Worksheets[timing];
                    exlss.Cells["A1"].LoadFromDataTable(dt, true, TableStyles.Medium9);
                    exp.Save();

                }
            }
Run Code Online (Sandbox Code Playgroud)

因此,我尝试使用EPPlus将保存到用户的特定文件夹中。但是,尽管它在第一个使用实例中保存它就好了,但是当我尝试保存或保存时,它只会抛出一个错误。

如果我将原始文件用作模板(如下所示),然后再次简单地使用第一部分,则效果很好。我不知道为什么保存不起作用。我试图将saveAs保存到其他位置,但这会导致相同的错误。

如果您有任何想法请帮助我。

〜edit这是错误保存文件C:\ Documents and Settings \ xxx \ Desktop \ Testing Andyxxxxxxxx \ 2481.xlsx时出错

〜edit对不起所有编辑,这是我的新手,这是一个InvalidOperationException(未处理)

ras*_*ino 5

我发现了问题,您需要在尝试处理工作表之前保存文件,在您的情况下,您需要在引用之前添加新工作表。


小智 0

尝试将 Epplus dll 更新到最新版本。目前它是4.0.5,可以从这里下载:

http://epplus.codeplex.com/downloads/get/813458

今天这对我有帮助。