Ho un'applicazione ASP.NET MVC 5. Ha un modulo semplice e quando l'utente lo invia, il modulo viene archiviato nella cache e quindi viene chiamata un'altra azione del controller, questa azione restituirà il modello come una vista come PDF.Generazione Rotativa PDF che funziona localmente ma non su IIS 7
Non ho bisogno di salvarlo localmente, solo per mostrarlo nel browser in modo che l'utente possa scaricarlo.
Non è necessario neanche un database, è per questo che memorizzo il modello nella cache.
Localmente, su Visual Studio 2013, funziona correttamente. Ma quando lo pubblico su IIS 7 ottengo un Unhandled Execution Error
. Ecco la traccia dello stack che torno:
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 switches, 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, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, 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
ho usato ActionAsPDF()
ma ora ho anche cercato di utilizzare return new ViewAsPDF()
. Entrambi danno lo stesso errore e traccia dello stack. Questo deve fare qualcosa con le autorizzazioni?
e 'davvero lanciando 'System.Exception' e non una classe derivata? Sarebbe estremamente povero. – leppie
Questo è tutto ciò che sto tornando e dato che non riesco a duplicarlo localmente non so come eseguirne il debug. – Robin
La prima riga della pila ha comunque un parametro che sembra un nome di percorso, ho avuto problemi con i percorsi e IIS in precedenza, potrebbe essere un problema? – Robin