Asp.Net MVC PDFを生成するためにビューを取得する方法
2023-10-06 16:09:04
質問
コントローラでアクションを呼び出したい。 コントローラにモデルからデータを取得させます。 その後、ビューが実行され、PDFが生成されます。 私が見つけた唯一の例は、Louの記事です。 http://whereslou.com/2009/04/12/returning-pdfs-from-an-aspnet-mvc-action . 彼のコードは非常にエレガントです。 ビューはITextSharpを使用してPDFを生成しています。 唯一の欠点は、彼の例ではSpark View Engineを使用していることです。 Microsoftの標準的なビューエンジンで同様のことを行う方法はあるのでしょうか?
どのように解決するのですか?
この問題に対する私たちの最終的な回答は ロータティバ .
これは、他のソリューションのように WKhinton.exe をラップしますが、私が見つけた中で最も使いやすいものです。
私は、問題をよく解決する他のすべての回答にも投票しましたが、これは、上記の質問で提起された問題を解決するために使用したものです。他の回答とは異なります。
以下は ロータティバ・チュートリアル .
をインストールした後、必要なのはこれだけです。
public ActionResult PrintInvoice(int invoiceId)
{
return new ActionAsPdf(
"Invoice",
new { invoiceId= invoiceId })
{ FileName = "Invoice.pdf" };
}
とてもとてもシンプルです。
関連
-
[解決済み] ファイルアップロード ASP.NET MVC 3.0
-
[解決済み] ASP.NET MVC Frameworkで複数のサブミットボタンを処理する方法は?
-
[解決済み] ASP.NET MVCでenumからドロップダウンリストを作成するにはどうすればよいですか?
-
[解決済み] ASP.NET MVC - カスタムIIdentityまたはIPrincipalの設定
-
[解決済み] ASP.NET MVCでビューをコンパイルする
-
[解決済み] ELMAHをASP.NET MVCの[HandleError]属性で動作させる方法は?
-
[解決済み] ASP.Net MVCのmodelStateからすべてのエラーを取得する方法は?
-
[解決済み] ASP.NET MVCのビューを文字列としてレンダリングする方法は?
-
[解決済み】Html.ActionLinkを使用して別のコントローラのアクションを呼び出す
-
[解決済み] ASP.NET MVCとIIS7で生のHTTPリクエスト/レスポンスをログに記録する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】同じキーのアイテムがすでに追加されています。
-
[解決済み] ASP.NET MVCアプリケーションで、デバッグ用の起動ページを設定するにはどうすればよいですか?
-
[解決済み] Html.ActionLinkをリンクではなく、ボタンや画像にする
-
[解決済み] [Solved] ASP.NET MVCでアクションの絶対URLを見つけるにはどうすればよいですか?
-
[解決済み] MVCとRazorにおけるHtml.TextboxForとHtml.EditorForの相違点
-
[解決済み] 型名または名前空間名 'DbContext' が見つかりませんでした [閉鎖]。
-
[解決済み] ソートロジックは、モデル、ビュー、コントローラのいずれに配置するのがよいのでしょうか?[クローズド]
-
[解決済み] エリア間のRedirectToAction?
-
[解決済み] Visual Studio 2012 または Visual Studio 2013 で古い MVC プロジェクトを開くにはどうすればよいですか?
-
[解決済み] MVCでPDFをブラウザに返すには?