2011-04-07 64 views
0

我想在用戶點擊時有一個鏈接,它允許用戶從SharePoint文檔庫下載文檔。如何以編程方式在SharePoint中下載文檔?

該鏈接將被放置在一個aspx頁面內。

我想下面的功能:

Response.ContentType = "application/xls"; 
Response.AppendHeader("Content-Disposition", "attachment; filename=abc.xls"); 
Response.TransmitFile(Server.MapPath("~/abc.xls")); 
Response.End(); 

它讓我成功地下載文件,但下載的文檔無法打開。

有什麼更好的方法來做到這一點?

感謝您能否提供一些參考資料,謝謝。

+0

當您嘗試打開文檔時會發生什麼? – 2011-04-07 02:19:01

+1

這與標題有什麼關係? – SLaks 2011-04-07 02:20:35

+0

當我打開xls文件時,錯誤表示它的格式與文件擴展名指定的格式不同。可能是我的ContentType出錯 – sams5817 2011-04-07 03:09:55

回答

3

對於您的標題,Javascript可以通過XMLHTTPRequest獲取web.config的內容到服務器,服務器正在發送該文件。當然,這是一種安全風險,我想不出任何人會想要這樣做的理由。

至於你的Excel文件,我會建議使用Content-Type的「application/octet-stream」作爲二進制響應。然後,瀏覽器將簡單地將二進制內容保存在指定的文件名下,並讓程序(在本例中爲Excel)負責解釋它。

+0

實際上,默認情況下,web.config文件不由IIS提供(出於同樣的安全原因)。你可以配置IIS來服務它,如果你真的想...但這不是一個好主意.... – 2011-04-07 02:29:59

+0

Brendan, 感謝您的回答,我輸入了錯誤的標題爲這個職位,抱歉造成的任何不便。 – sams5817 2011-04-07 03:07:40

+0

非常感謝我解決了這個問題 – sams5817 2011-04-07 05:10:52

相關問題