asp.Net   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了iis-7 – Rotativa PDF生成本地工作,但不在IIS 7上大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个ASP.NET MVC 5应用程序。它有一个简单的形式,当用户提交它时,表单存储在缓存中,然后调用另一个控制器动作,该操作将以PDF的形式返回模型作为视图。

我没有必要在本地保存它,只是在浏览器中显示,以便用户可以下载它。

也不需要数据库,这就是为什么我将模型存储在缓存中。

在本地,在Visual studio 2013上,它工作正常。但是当我发布到IIS 7时,我会收到一个未处理的执行错误。这是我收回的堆栈跟踪:

Unhandled Execution Error
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Exception:

source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and LOCATIOn of the exception can be identified using the exception stack trace below.

Stack Trace:


[Exception]
   Rotativa.WkhtmltopdfDriver.Convert(String wkhtmltopdfPath,String switches,String html) +1364
   Rotativa.WkhtmltopdfDriver.ConvertHtml(String wkhtmltopdfPath,String html) +70
   Rotativa.ViewAsPdf.CallTheDriver(ControllerContext context) +1986
   Rotativa.AsPdfResultBase.buildPdf(ControllerContext context) +380
   Rotativa.AsPdfResultBase.ExecuteResult(ControllerContext context) +69
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters,Int32 filterIndex,ResultExecuTingContext preContext,ControllerContext controllerContext,ActionResult actionResult) +109
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters,ActionResult actionResult) +890
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext,IList`1 filters,ActionResult actionResult) +97
   System.Web.Mvc.Async.<>c__DisplayClass21.<BeginInvokeAction>b__1e(IAsyncResult asyncResult) +241
   System.Web.Mvc.Controller.<BeginExecuteCore>b__1d(IAsyncResult asyncResult,ExecuteCoreState innerStatE) +29
   System.Web.Mvc.Async.WrappedAsyncVoid`1.CALLENdDelegate(IAsyncResult asyncResult) +111
   System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +53
   System.Web.Mvc.Async.WrappedAsyncVoid`1.CALLENdDelegate(IAsyncResult asyncResult) +19
   System.Web.Mvc.MvcHandler.<BeginProcessrequest>b__5(IAsyncResult asyncResult,ProcessrequestState innerStatE) +51
   System.Web.Mvc.Async.WrappedAsyncVoid`1.CALLENdDelegate(IAsyncResult asyncResult) +111
   System.Web.CallHandlerEXECUTIONStep.System.Web.httpApplication.IEXECUTIONStep.Execute() +606
   System.Web.httpApplication.ExecuteStep(IEXECUTIONStep step,Boolean& completedSynchronously) +288


Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.34248

我第一次使用ActionAsPDF(),但是现在我也尝试使用返回新的ViewAsPDF()。两者都提供相同的错误和堆栈跟踪。这是否必须执行某些权限?

解决方法

此错误是一个名为(MSVCP120.dll)的Visual studio 2013文件缺少的C可重新分发包。

解决问题:

>打开Visual studio 2013的可下载C包可下载链接如下
download Visual C++ Redistributable Packages for Visual Studio 2013
>单击下载并选择文件(vcredist_x86.exE),即使您正在运行X64位服务器版本。
>安装文件。

查看Jalal W Hijazi Blog http://jwhijazi.blogspot.com/2015/05/solving-rotativa-unhandled-exception.html了解更多详情。

大佬总结

以上是大佬教程为你收集整理的iis-7 – Rotativa PDF生成本地工作,但不在IIS 7上全部内容,希望文章能够帮你解决iis-7 – Rotativa PDF生成本地工作,但不在IIS 7上所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。