简体   繁体   English

使用 RazorPDF 创建 pdf

[英]Create pdf with RazorPDF

I want to create a simple pdf with RazorPDF.我想用 RazorPDF 创建一个简单的 pdf。

I installed it from Nuget Package.我是从 Nuget Package 安装的。 (itexsharp and razorpdf appear in reference) (itexsharp 和 razorpdf 出现在参考中)

Here's my controller:这是我的控制器:

public ActionResult Index()
{
    return new RazorPDF.PdfResult();
}

And, I have a simple view that shows "hello".而且,我有一个简单的视图显示“你好”。

When I use return view() , everything is ok and "hello" is displayed, but when I use return new RazorPDF.PdfResult();当我使用return view() ,一切正常并显示“hello”,但是当我使用return new RazorPDF.PdfResult(); , the following error occurs: ,出现以下错误:

The view 'Pdf' or its master was not found or no view engine supports the searched locations.未找到视图“Pdf”或其母版,或者没有视图引擎支持搜索的位置。 The following locations were searched: view/home/pdf.aspx搜索了以下位置:view/home/pdf.aspx

Actually you have to create your own separate masterpage for the PDF view.实际上,您必须为 PDF 视图创建自己的单独母版页。 Just add one partial view masterpage in shared folder and in that page just copy paste below code.只需在共享文件夹中添加一个局部视图母版页,然后在该页面中复制粘贴下面的代码即可。

    <itext creationdate="@DateTime.Now.ToString()" producer="RazorPDF">
          @RenderBody()
    </itext>

Try to have a look at how to return a file in MVC.尝试看看如何在 MVC 中返回文件。 See this question and its answer. 请参阅此问题及其答案。

Not sure what PdfResult returns but you would convert your return statement to something like this:不确定 PdfResult 返回什么,但您可以将 return 语句转换为如下内容:

return File(new RazorPDF.PdfResult(), "application/pdf");

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM