1

私のコントローラーでは、ビューをレンダリングしています。

私の Action メソッドは次のようになります。

public ActionResult SomePrint(Model model)
{
   //Some business action
   return View("viewname",model); 
}

今、私の要件は、このビューをファイル (pdf ファイルの場合もあります) としてソリューションに保存し、それを送信して印刷し、印刷が完了したらファイルを削除することです。

Rotativa を使用して、次の方法で pdf に変換しようとしました

public ActionResult DownloadViewPDF()
{
   var model = new GeneratePDFModel();
     //Code to get content
   return new Rotativa.ViewAsPdf("GeneratePDF", model){FileName = "TestViewAsPdf.pdf"}
}

しかし、私はそれをpdfとして保存して同じものを印刷する必要があります。

何か助けはありますか?前もって感謝します。

4

2 に答える 2

0

ViewAsPdf で BuildPdf メソッドを使用できます。

public ActionResult DownloadViewPDF()
    {
        var model = new GeneratePDFModel();
        var pdfResult = new ViewAsPdf("GeneratePDF", model) 
                          { FileName = "TestViewAsPdf.pdf" };

        var binary = pdfResult.BuildPdf(this.ControllerContext);

        // you can save the binary pdf now

        return File(binary, "application/pdf");
    }
于 2015-02-07T09:35:05.217 に答える
0

既知の変換可能な形式 (Excel など) へのエクスポートを要求していた場合は、ストリームをフォーマットするだけで十分です。ただし、PDF にエクスポートする場合は、別のビューを作成してファイルをエクスポートし、iText などのサードパーティ アプリケーションを使用する必要があります。

于 2015-02-06T15:29:22.047 に答える