如何在C#中保存现有Excel文件中的更改而不保存文件?

worksheet.Cells[1,2] = "MSC"; //Editing the file worksheet.Cells[1,1].Style.Font.Bold = true; theWorkbook.Save(); //Saving The file it throws Read only file Exception 

当我使用这段代码发生exception告诉我,该文件是只读的,我必须保存一个新的副本,如果我使用

 theWorkbook.Close(misValue, misValue, misValue); 

它会popup一个消息窗口来保存文件中的新副本,我想编辑该文件并将其保存到现有文件中

在这里find的post提供了将工作簿保存在临时文件中的代码,并用该临时副本覆盖原始文件。

相关片段:

 //[...] string tmpName = Path.GetTempFileName(); File.Delete(tmpName); wb.SaveAs(tmpName, missing, missing, missing, missing, missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlExclusive, missing, missing, missing, missing, missing); wb.Close(false, missing, missing); excel.Quit(); File.Delete(Fname); File.Move(tmpName, Fname);