首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

asp.net 下载文件解决思路

2012-04-13 
asp.net 下载文件我文件上传后是用girdview显示出来的,在 TemplateField中添加了如下字段:asp:TemplateFi

asp.net 下载文件
我文件上传后是用girdview显示出来的,在 TemplateField中添加了如下字段:
 <asp:TemplateField HeaderText="下载">
  <ItemTemplate>
  <asp:HyperLink ID="HyperLink1" runat="server" Text="下载" HeaderText="下载" 
  NavigateUrl='<%# Eval("saveaddress") %>'></asp:HyperLink>
  </ItemTemplate>
  </asp:TemplateField>
在浏览器的状态栏上显示file:///D:/istudy/upfile/teacherli/istudybbs.fla
这个文件路径是对的,但是点下载没有反应

[解决办法]
file:///D:/istudy/upfile/teacherli/istudybbs.fla这是文件路径,是无法下载和的。

你应该写
<asp:HyperLink ID="HyperLink1" runat="server" Text="下载" HeaderText="下载" 
NavigateUrl='<%# "DownLoad.aspx?File=" + Eval("saveaddress") %>'></asp:HyperLink>

DownLoad.aspx里面写

string filepath = Request.QueryString["File"];
String filename= System.IO.Path.GetFileName(filepath );
Response.Clear();
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=" + filename);
Response.Flush();
Response.WriteFile(filepath);
Response.End();
[解决办法]
file:///D:/istudy/upfile/teacherli/istudybbs.fla这个是从客户端本地访问,涉及到安全性的。服务端提供下载服务不是这样玩儿的

http://apps.hi.baidu.com/share/detail/18081057

热点排行