Save response.content to PDF (C#)

Viewed 662

The code below makes a call to an API and it returns the content of PDF file. How would I save the contents as PDF file. They way I'm doing now spit out a blank PDF file.

using RestSharp;
..........
var RecordID = "23234332"
var client = new RestClient("-----");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Basic");
request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
request.AddHeader("Cookie", "---------;
request.AddParameter("method", "GetPDF");
request.AddParameter("RecordID", RecordID);
IRestResponse response = client.Execute(request);

byte[] buffer = Encoding.ASCII.GetBytes(response.Content);
MemoryStream ms = new MemoryStream(buffer);
FileStream file = new FileStream(@"C:\temp\" + RecordID+ ".pdf", FileMode.Create, FileAccess.Write);
ms.WriteTo(file);
file.Close();
ms.Close();
1 Answers

This seems to work. Let me know if there's a different / better approach.

            byte[] buffer = client.DownloadData(request);
            
            MemoryStream ms = new MemoryStream(buffer);
            FileStream file = new FileStream(@"C:\temp\" + RecordID + ".pdf", FileMode.Create, FileAccess.Write);
            ms.WriteTo(file);
            file.Close();
            ms.Close();

Related