2011-04-07 62 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

相关问题