2011-06-30 4 views
0

iTextSharpにpdfファイルを作った。私は次のコードを使用します。このpdfはファイルフォルダに自動的に保存されます。しかし、私はpdfが新しいタブに開いている欲しいです。どのように可能です。オープンpdfは新しいタブ

using (System.IO.MemoryStream ms = new System.IO.MemoryStream()) 

     { 

      using (iTextSharp.text.Document doc = new iTextSharp.text.Document()) 
      { 
       using (iTextSharp.text.pdf.PdfWriter writer = iTextSharp.text.pdf.PdfWriter.GetInstance(doc, ms)) 
       { 
        doc.Open(); 
        doc.Add(new iTextSharp.text.Paragraph(lblMessage.Text.ToString())); 
        doc.Close(); 
        Response.Clear(); 
        Response.ContentType = "application/pdf"; 
        Response.AddHeader("content-disposition", "attachment;filename=Receipt3.pdf"); 
        Response.Cache.SetCacheability(HttpCacheability.NoCache); 
        Response.BinaryWrite(ms.ToArray()); 
        System.Web.HttpContext.Current.ApplicationInstance.CompleteRequest(); 
       } 
      } 

     } 

答えて

3

<a> target attributeを考慮する必要があります。あなたは今、私の好ま、あなたはそれがブラウザウィンドウ内にあるかどうか気にしないことを言ってきたように

<a href="GeneratePdf.ashx?somekey=10" target="_blank"> 

Update-:あなたは、おそらくのようなものを使用して、新しいウィンドウでPDFを開くには、これを使用することができますMercerTraiesteの回答に従って、コンテンツの配置を添付ファイルに変更することです。

ASP.NETを使用している場合は、カスタムHttpHandlerを作成してPDFをストリームすることを検討することをお勧めします。

関連する問題