Rotativa 在本地主机中工作,但在我的 Azure Web 应用程序中无法工作 - 2021

Posted

技术标签:

【中文标题】Rotativa 在本地主机中工作,但在我的 Azure Web 应用程序中无法工作 - 2021【英文标题】:Rotativa works in localhost but wont work in my Azure Web App - 2021 【发布时间】:2021-10-26 22:11:40 【问题描述】:

免责声明:我知道还有其他类似的问题,但似乎都已经很老了,我不知道这是否是 Azure 中的新问题。

我有一个小型 C# MVC Web 应用程序,其中列出了一些实验室测试结果,并让用户以 PDF 格式下载结果。我一直用Rotativa做这种东西,从来没有遇到过问题。

该功能在 localhost 中就像一个魅力,但是当我在 Azure 中部署到我的 Web 应用程序时,它不会加载并且服务器超时。我已经尝试了所有方法但无法正常工作,我安装的 Rotativa 在我的项目版本 1.7.3 中有一个 Nuget。

这就是我创建 pdf 的方式:

public ActionResult Pdf()

     var file = new Rotativa.ViewAsPdf("~/Views/CovidTest/TestViewForPDF.cshtml", null)  FileName = "Test.pdf", PageSize = Rotativa.Options.Size.A4, CustomSwitches = "--disable-smart-shrinking" ;         
        
     return file;

这是我第一次在 Azure 中遇到此问题。我不知道 Web 应用配置中是否缺少某些内容。

【问题讨论】:

您是否添加了任何异常处理和日志记录? 您解决了这个问题吗?我在尝试部署使用 Rotativa.ViewAsPDf 的应用服务时遇到了类似的问题。谢谢。 【参考方案1】:

我在this answer 找到了适合我的解决方案。

我的测试应用服务使用的是 D1 共享计划。一旦我将其扩大到生产计划 - 例如S1 - 成功了。

【讨论】:

以上是关于Rotativa 在本地主机中工作,但在我的 Azure Web 应用程序中无法工作 - 2021的主要内容,如果未能解决你的问题,请参考以下文章

仅在托管应用程序时出现错误,但在我的本地主机中没有

jquery 不在部署中工作,但在本地 nuxtjs 中工作?

Json 函数在 mysql 版本 5.7 和 mariadb 10.4.11 中工作,但在 10.1.44 中不工作

无法设置未定义的属性“区域设置”,不能在 replit 中工作,但在我的电脑上

Firebase 推送通知在纱线手表中工作,但在纱线构建中不工作

ForEach 不能在 mongodb 上工作,但在本地数组声明中工作正常