C# を使用して ASP MVC で pdf ファイルをダウンロードしようとしています。
コントローラーへの呼び出しを呼び出すボタンを備えた UI ダイアログがあります。
"Download PDF": function () {
$.post(Urls.Action.DownloadPDF);
コントローラーでは、PDF コンバーターを使用して html を PDF に変換しています。
public ActionResult DownloadPDF()
{
string htmlToConvert = RenderViewAsString("~/Content/Eula.htm");
HtmlToPdf htmlToPdfConverter = new HtmlToPdf();
byte[] pdfBuffer = htmlToPdfConverter.ConvertHtmlToMemory(htmlToConvert,null);
HttpContext.Response.AddHeader("content-disposition", "attachment; filename=Download.pdf");
FileResult fileResult = new FileContentResult(pdfBuffer, "application/pdf");
fileResult.FileDownloadName = "Download.pdf";
return fileResult;
}
コードはデバッガーで問題なくメソッドを実行し、ポストは成功を返しますが、ブラウザーは PDF をダウンロードしていません。
編集 -
キー値 レスポンス HTTP/1.1 200 OK Cache-Control プライベート、s-maxage=0、private、no-store、no-cache、s-maxage=0、max-age=0、must-revalidate、proxy-revalidate、no-transform プラグマのキャッシュなし コンテントタイプ申請書/pdf 期限切れ -1 サーバー Microsoft-IIS/7.5 セット Cookie FB; パス=/; HttpOnly X-AspNetMvc-バージョン 3.0 content-disposition アタッチメント; ファイル名=Download.pdf Content-Disposition 添付ファイル。ファイル名=Download.pdf X-AspNet-バージョン 4.0.30319 X-Powered-By ASP.NET X-Content-Type-Options nosniff X-XSS-保護 1; モード=ブロック X-UA 互換 IE=edge,chrome=1 日付 2013 年 6 月 7 日金曜日 03:31:34 GMT コンテンツの長さ 81862