PDF文件错误无法访问已关闭的流

时间:2015-10-28 00:47:02

标签: asp.net-mvc-4 pdf mvcrazortopdf

我想为报告模块生成PDF文件。这是控制器中生成PDF文件的代码。

public ActionResult Reports_CARF(int carf_id= 0) 
{
    var data = db.Dept_Approval_Data_vw.Where(x => x.carf_id == carf_id && x.request_category == "PETC Local Applications" && x.verified_by != null).ToList();

    return new PdfActionResult(data);
}

我在控制器中包含以下内容:

using MvcRazorToPdf;
using iTextSharp.text;
using iTextSharp.text.pdf;

现在,当我尝试运行此代码时,我在浏览器中显示此错误。 enter image description here

请指教。提前谢谢。

1 个答案:

答案 0 :(得分:0)

根据个人经验,这可能是来自您的视图的格式错误的XHTML,导致MvcRazorToPdf中出现未处理的异常。

尝试渲染视图,例如返回 <html lang="en"> <head> <title>Experience</title> <script type="text/javascript" src="JSFolder/jquery-3.4.1.min.js"></script> <script type="text/javascript"></script> <meta charset="UTF-8"> <meta name="viewport" content="width=devic-width, initial-scale=1"> <link rel = "stylesheet" href = "exp.css"> <script src="http://code.jquery.com/jquery-latest.min.js"></script> <script> $(function() { $("#visible").click(function() { $('#invisible').toggleClass("show"); }); }); $(function() { $("#visible1").click(function() { $('#invisible2').toggleClass("show"); }); }); $(function() { $("#visible2").click(function() { $('#invisible3').toggleClass("show"); }); }); $(function() { $("#visible3").click(function() { $('#invisible4').toggleClass("show"); }); }); $(function() { $("#visible4").click(function() { $('#invisible5').toggleClass("show"); }); }); $(function() { $("#visible6").click(function() { $('#invisible6').toggleClass("show"); }); }); $(function() { $("#visible7").click(function() { $('#invisible7').toggleClass("show"); }); }); $(function() { $("#visible8").click(function() { $('#invisible8').toggleClass("show"); }); }); </script> <style> .hide{display:none;} .show{display:block; color:#769EA8;} .push{top:350%;} </style> </head> <body class="body"> <div class="background"> </div> <div class="fr"> <a href="exp.html" class="active">fr</a> </div> <div class="NavBar"> <h1 id="experience">.</a> </div> <div id="mySidenav" class="sidenav"> </div> <div>... </div> <span style="font-size:30px;cursor:pointer;color:#EBEDFA;position:fixed;left:5px" onclick="openNav()">&#9776;</span> <script src="http://code.jquery-3.com/jquery-latest.min.js"></script> <script type="text/javascript"> function openNav(){ document.getElementById("mySidenav").style.width = "200px"; } function closeNav() { document.getElementById("mySidenav").style.width = "0"; } </script> <style> .hide{display:none;} .show{display:block;} </style> </body> </html> 而不是 body{ position: relative; font-family: sans-sherif; background-color: #242424; overflow-y: scroll; } .NavBar{ position: fixed; top: 8%; left: 26.5%; width: 100% } #experience{ position: absolute; color: #EBEDFA; padding-right: 2%; padding-left: 2%; font-size: 35px; left: 14.5%; } ,并通过XHTML验证器运行输出。