2015-06-02 2 views
-2
byte[] arrayofbyte = new System.Net.WebClient().DownloadData("http://pdfurl"); 
MemoryStream ms = new MemoryStream(arrayofbyte); 

System.Web.HttpContext.Current.Response.ClearContent(); 
System.Web.HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8; 
System.Web.HttpContext.Current.Response.AddHeader("ContentType", "application/pdf; charset=utf-8"); 
System.Web.HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=" + DateTime.Now.Ticks.ToString() + ".pdf" + ";"); 
System.Web.HttpContext.Current.Response.BinaryWrite(ms.ToArray()); 
System.Web.HttpContext.Current.Response.Flush(); 
System.Web.HttpContext.Current.Response.Close(); 
+2

Только вопросы кода обычно не приветствуются. Как насчет добавления некоторого объяснения вашей проблемы? –

+0

Вы загружаете файл самостоятельно, а затем пересылаете его? Вы уверены, что файл pdfurl ведет к допустимому файлу, и что 'ms' имеет контент? – Alexander

ответ

0

Я думаю, что вам может не хватать заголовок длины содержимого.

System.Web.HttpContext.Current.Response.AppendHeader("Content-Length", ms.Length.ToString()); 
Смежные вопросы