选择打印时,在 Open XML SDK 2.5 中创建的文件崩溃 excel

File created in Open XML SDK 2.5 crashes excel when selecting print

我使用 open xml 2.5 sdk 在 c# 中创建了一个 excel 文档。该文件在 excel 中打开并且在我 select 打印之前工作正常。此时,excel 崩溃并出现错误 "Excel has stopped working"。我正在使用 Excel 2016。如果我在 select 打印之前先保存文件,问题就解决了。

我能够找到解决方案,但在 Whosebug 上找不到这个问题,所以我发布并回答了我自己的问题。如果有人有任何改进意见或更好的解决方案,请告诉我。

谢谢。

这个 link 为我指明了正确的方向。问题是我没有将书评添加到我的文件中。代码中的解决方案是:

WorkbookPart workbookPart = document.AddWorkbookPart();
workbookPart.Workbook = new Workbook();
WorksheetPart worksheetPart = workbookPart.AddNewPart<WorksheetPart>();
worksheetPart.Worksheet = new Worksheet();

BookViews bookViews = new BookViews();
WorkbookView workbookView = new WorkbookView();
bookViews.Append(workbookView);
workbookPart.Workbook.Append(bookViews);

在原文 link 中,其中一条评论提到在 Sheets 之前添加 BookView。我发现这是真的。