请教下 Aspose.Cells.dll的Workbook.Save 无响应问题

大家好,我在公司内部系统中使用Aspose.Cells.dll打开一个excel文件,然后转为pdf文件供用户预览, 关键代码如下:

Workbook wb = new Workbook(filePath);
……
PdfSaveOptions pdfOptions = new PdfSaveOptions(Aspose.Cells.SaveFormat.Pdf);
pdfOptions.CalculateFormula = true;
pdfOptions.ClearData = true;
wb.Save(filePath, pdfOptions);

系统是布署在IIS上面,前期一段时间都是没有问题,最近几天总是出现点预览时网页无法响应的问题,经测试问题就出在wb.Save(filePath, pdfOptions)这句代码上面。但回收应用程序池后又恢复正常了,但撑不到10分钟,又无法响应。请问下大家,这种情况问题可能出在那里了?
...全文
485 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiange6669 2022-09-13
  • 打赏
  • 举报
回复

请问作者这个问题解决了吗?我也碰见这个情况,但是只有在linux环境报错,windows下没问题

jiange6669 2022-09-13
  • 举报
回复
@jiange6669 有的时候转换成功有的时候失败
CSY_Admin 2019-12-05
  • 打赏
  • 举报
回复
生成的pdf文件名是以登录用户名+当前时间的时分秒拼凑起来的!!! 时分秒不行吧还得加上日期啊
  • 打赏
  • 举报
回复
引用 5 楼 Hello World, 的回复:
那你wb.Save(filePath, pdfOptions);这句生成PDF文件不是会重名?至少要另存一个文件吧
生成的pdf文件名是以登录用户名+当前时间的时分秒拼凑起来的,理论上不会存在重名的问题。
Hello World, 2019-11-15
  • 打赏
  • 举报
回复
先判断filePath的文件存不存在,要么就是存在就不再生成,要么就用完后删除,要是不嫌多就用随机文件名
  • 打赏
  • 举报
回复
引用 1 楼 Hello World, 的回复:
会不会文件名重复被锁定?
我也是怀疑过这个原因,然后为文件引用加了锁 private static object sys_objPrint = new object(); ...... lock (sys_objPrint) //该处必须增加锁设置,防止多个用户同时对模板文件的访问而造成程序无法响应。 { Workbook wb = new Workbook(printFilePath); ...... } 但没有效果,也有可能是我的锁加的不对。
Hello World, 2019-11-15
  • 打赏
  • 举报
回复
那你wb.Save(filePath, pdfOptions);这句生成PDF文件不是会重名?至少要另存一个文件吧
  • 打赏
  • 举报
回复
引用 3 楼 Hello World, 的回复:
先判断filePath的文件存不存在,要么就是存在就不再生成,要么就用完后删除,要是不嫌多就用随机文件名
filePath是一定存在的,这个是数据生成模板,是不能删除掉的。
Hello World, 2019-11-14
  • 打赏
  • 举报
回复
会不会文件名重复被锁定?

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧