Return PDF to WebPage from ASHX
<p>I have a web page with a "download" link on it.</p>

<p>Using jQuery I do an Ajax Get to a ASHX file.</p>

<p>In the ASHX I get the Stream of the file.  I then convert the stream to a byte array and return the byte array back to the calling html page;</p>

<p>jQuery</p>

<pre><code>$(".DownloadConvertedPDF").click(function () {
  var bookId = $(this).attr("bookId");

  $.get('/UserControls/download.ashx?format=pdf&amp;bookId=' + bookId, {}, function (data) { });

});
</code></pre>

<p>C#</p>

<pre><code>context.Response.ContentType = "Application/pdf";
Stream fileStream = publishBookManager.GetFile(documentId);
byte[] buffer = new byte[16 * 1024];
using (MemoryStream ms = new MemoryStream())
{
  int read;
  while ((read = fileStream.Read(buffer, 0, buffer.Length)) &gt; 0)
  {
    ms.Write(buffer, 0, read);
  }
}

context.Response.OutputStream.Write(buffer, 0, buffer.Length);
</code></pre>

<p>I don't get an error but also the PDF doesn't display on screen.</p>

<p>Ideally I'd like the pdf returned and the jQuery to launch the pdf in a seperate tab within the browser.</p>

<p>How can I make this happen or what am I doing wrong?</p>
