2014-04-01 64 views
0

如何使用C#和ASP.NET中的響應調用動態地在瀏覽器中打開文件資源? 我有一個存儲文檔的文件服務器。我有另一臺運行IIS和ASP.NET應用程序的服務器。我需要在瀏覽器窗口中打開存儲在文件服務器上的pdf文檔。 我提供folderPath字符串爲「\\ MyFileServer \ documentFolder \」,文件名字符串爲「doc.pdf」。我嘗試重定向到使用Response.Redirect在瀏覽器中打開pdf

Response.Redirect(folderPath + filename, true); 

但重定向會嘗試將我提供的資源位置追加到當前服務器路徑。我是ASP.NET新手,請原諒我的無知。 哦,順便說一句,該網站是從Android平板電腦訪問,所以我需要顯式重定向客戶端瀏覽器到文件資源,否則android將開始下載文件,而不是打開它。

回答

1

東西的響應,寫一個標題:

Content-Disposition: inline; doc.pdf 

的回答查看更多here

+0

Thx爲答案。我嘗試過但沒有任何反應。幾乎就像這個之後缺少一些執行命令。 – ArtK

+0

答案不起作用,但鏈接有一些很好的信息。 – ArtK

1

看一看Response.AddHeader

你可以這樣做

Response.AddHeader("content-disposition", "inline; filename=" + filepath + ".pdf"); 
+0

THX 。我嘗試過但沒有任何反應。幾乎就像這個之後缺少一些執行命令。瀏覽器不斷顯示我的test.aspx。 – ArtK

+0

@ArtK:您的文件路徑是否包含文件擴展名?如果是刪除手動添加的分機。否則可能會導致'Response.AddHeader(「content-disposition」,「inline; filename.pdf.pdf」)' –

+0

我測試了瀏覽器通過發送給Response.Write()的路徑字符串。當我知道這是正確的時候,我在Response.AddHeader()中使用它。通話執行時沒有任何操作。 – ArtK

相關問題