我正在使用Web服務WCF以字節數組格式返回PDF文件。在客戶端返回pdf字節數組WCF
public byte[] displayPDF(string pdfName){
return Service.Properties.Resources.testFile;
}
然而,當我收到的字節數組,並利用這一點,寫在我的電腦上的文件:我剛剛回來,我有資源這樣的PDF文件
HttpClient client = new HttpClient();
client.MaxResponseContentBufferSize = 9999999;
var uri = new Uri("http://TestSite.azurewebsites.net/Service.svc/webHttp/displayPDF?pdfName=testFile.pdf");
var response = client.GetAsync(uri);
byte[] byteArray = response.Result.Content.ReadAsByteArrayAsync().Result;
var filePath = "C:\\Users\\Admin 1\\Documents\\temp.pdf";
System.IO.File.WriteAllBytes(filePath, byteArray);
它向我的文檔寫出PDF文件,但是當我點擊它時,它說無法查看PDF,因爲它不受支持的文件類型,或者它可能已損壞。
我已經看到了一些關於發送字節數組而不是發送使用流的帖子。我想知道是否有任何關於如何正確執行此操作的示例,以便我可以將字節數組或流或任何您建議的內容寫入客戶端的pdf文件,然後通過單擊該文件手動打開該文件。
說明:我正在使用REST訪問Web服務。因此添加服務引用不是一個選項。
檢查這篇文章的http://www.topwcftutorials。 net/2014/03/download-large-file-in-wcf.html – Agalo
感謝您的建議,但我無法像您的鏈接建議一樣向客戶端添加服務引用。我已經相應地更新了我的帖子。 – User9813
這是什麼類型的「服務」? – anhtv13