Npoi导出,提示“部分内容有问题”,解决方案

webapi引入npoi类库做导出,excel文件生成给客户端,客户端打开,有如下的提示

找了很多解决方案,大都千篇一律,最终还没能解决问题

传说1:在获得 workbook.Write(ms) 生成的 MemoryStream 后,使用了 ms.GetBuffer() 返回文件内容,导致生成的 Excel 文件结尾处有大量的 00(空字节),改为 ms.ToArray() 即可得到正常的文件了。

传说2:因为在导出前excel是由模板读取的,可能会导致结果出现

个人导出的流程

经过各种尝试,最终的解决方案是将Npoi的nuget包降级即可,之前用的是 2.5.1的版本,生成excel后,会提示“部分内容有问题”

降级到2.4.1后,不在提示,至少这么做解决了本人的这个问题,备注一下,以供参考。