2016-09-14 16 views
0

我有一個顯示PDF文件的功能。即時通訊使用Internet Explorer,它是最新的。我試圖用兩臺電腦做到這一點。在一個瀏覽器中,它要求通過pdf閱讀器打開,而另一個瀏覽器打開一個標籤並顯示一個空白頁面。我已經嘗試了很多在互聯網上發現的代碼,即使在stackoverflow中。但沒有任何工作,因爲我想。這裏我添加了我的代碼。請看看它。爲什麼不在Internet Explorer中的獨立選項卡中查看PDF文件?

LinkBut​​ton的Click事件

protected void pdfViewLOP_Click(object sender, EventArgs e) 
{ 
     Response.Write(string.Format("<script>window.open('{0}','_blank');</script>", "viewPDF.aspx")); 
}  

代碼在新的網頁,其中的PDF應該顯示

protected void Page_Load(object sender, EventArgs e) 
{ 
    try 
    { 
     string name = Session["name"].ToString(); 
     string FilePath = Server.MapPath("~/filesPDF/" + name); 
     WebClient client = new WebClient(); 
     Byte[] buffer = client.DownloadData(FilePath); 
     if (buffer != null) 
     { 
       Response.Clear(); 
       Response.ContentType = "application/pdf"; 
       Response.AddHeader("content-length", buffer.Length.ToString()); 
       Response.BinaryWrite(buffer); 
     } 
    } 
    catch (Exception ex) 
    { 
     WebMsgBox.Show(ex.Message); 
    } 
} 

回答

2

這可能是由於設置在客戶機上,特別是Adobe偏好設置。

選擇編輯 - >首選項

從左邊

要顯示PDF列表中選擇互聯網類別:

要使用Web瀏覽器時更改默認的PDF打開行爲在瀏覽器中選中「在瀏覽器中顯示」

要在Acrobat中直接從網上打開PDF,請取消選中「在瀏覽器中顯示:

參見this articlethis article

另請注意:要在瀏覽器中顯示PDF,您的緩存控制標頭必須允許瀏覽器創建PDF的臨時副本。如果您正在設置緩存提示以防止緩存(例如,如果您的應用程序包含敏感頁面),則最好讓用戶下載PDF並離線查看。

+0

我在文章中試過,但瀏覽器中沒有Adobe擴展installd – Mike

相關問題