1、下载功能:

<asp:LinkButton ID="lbtnAttachName" runat="server" ToolTip="下载文件" Text='<%#Eval("AttachName") %>'
     PostBackUrl='<%#Eval("attachPath","~/Common/FileDown.aspx?path={0}") %>'></asp:LinkButton>

FileDown.aspx.cs 文件
 protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            string path = Request.QueryString["path"];

string filePath = Server.MapPath("~/" + Server.UrlDecode(path));
            if (!File.Exists(filePath))
            {
                ClientScript.RegisterStartupScript(this.GetType(), "", "alert('文件不存在!'); history.back(); ", true);
                return;
            }
            new FileInfo(filePath).Attributes = FileAttributes.Normal;
            FileStream r = new FileStream(filePath, FileMode.Open);
            //设置基本信息 
            Response.Buffer = false;
            Response.AddHeader("Connection", "Keep-Alive");
            Response.ContentType = "application/octet-stream";
            Response.AddHeader("Content-Disposition", "attachment;filename=" + Path.GetFileName(filePath));
            Response.AddHeader("Content-Length", r.Length.ToString());
            while (true)
            {
                //开辟缓冲区空间 
                byte[] buffer = new byte[1024];
                //读取文件的数据 
                int leng = r.Read(buffer, 0, 1024);
                if (leng == 0)//到文件尾,结束 
                    break;
                if (leng == 1024)//读出的文件数据长度等于缓冲区长度,直接将缓冲区数据写入 
                    Response.BinaryWrite(buffer);
                else
                {
                    //读出文件数据比缓冲区小,重新定义缓冲区大小,只用于读取文件的最后一个数据块 
                    byte[] b = new byte[leng];
                    for (int i = 0; i < leng; i++)
                        b[i] = buffer[i];
                    Response.BinaryWrite(b);
                }
            }
            r.Close();//关闭下载文件 
            Response.End();//结束文件下载

}
        catch (Exception)
        {
            ClientScript.RegisterStartupScript(this.GetType(), "", "alert('文件下载时出现错误!'); history.back(); ", true);
              
           // Alert(this, "文件下载时出现错误!");
        }
    }

asp.net 中 linkbutton 点击下载文件相关推荐

  1. php 当前页面下载文件,php实现当前页面点击下载文件的简单方法

    php实现当前页面点击下载文件的简单方法 发布于 2017-08-02 17:44:21 | 80 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypertext ...

  2. 实现点击下载文件的几种方法

    标签:文件下载,技巧 在实现点击下载文件有多种方法: 后端设置header信息 通过后端告诉浏览器header信息实现下载: header('Content-type: image/jpeg'); h ...

  3. php 网页内容下载,php实现当前页面点击下载文件的简单方法

    php控制器中代码 public function downFile($path = ''){ if(!$path) header("Location: /"); download ...

  4. php通用下载方法,php实现当前页面点击下载文件的简单方法

    php控制器中代码 public function downFile($path = ''){ if(!$path) header("Location: /"); download ...

  5. php下载当前页面,php实现当前页面点击下载文件的简单方法

    php控制器中代码 public function downFile($path = ){ if(!$path) header(Location: /); download($path); } dow ...

  6. php 实现点击下载,php实现当前页面点击下载文件的简单方法

    php控制器中代码 public function downFile($path = ''){ if(!$path) header("Location: /"); download ...

  7. CentOS6中连接ftp服务器下载文件时出现了java.net.SocketException: Connection reset

    问题描述:连接CentOS6中的ftp服务器下载文件时出现了java.net.SocketException: Connection reset 解决办法: 1.查看防火墙状态,发现防火墙已开启 se ...

  8. Linux 中如何使用 Aria2 下载文件

    Aria2是一个免费的开源轻量级多协议命令行实用程序,可以从Internet上下载文件.它支持各种协议,例如HTTP,HTTPS,FTP甚至BitTorrent.Aria2可在Windows,Linu ...

  9. easyui中linkbutton连续点击事件

    easyui中linkbutton连续点击事件 <a id="voice" class="easyui-linkbutton easyui-tooltip" ...

最新文章

  1. Qt msgBox 快捷版
  2. autoware中lgsvl Simulator安装与使用:LGsvl Simulator 2021.2.1版(九)
  3. cent os数据库安装
  4. CF1063B Labyrinth
  5. Kubesphere V2.1.1安装后开启可拔插组件DevOps(2)
  6. 售价超16万,全球仅限8台!iPhone 13 Pro冬奥会定制版上架,18K黄金打造
  7. 《IT项目管理那些事儿》——CSDN蒋涛序
  8. 如何解决”ArcGIS Server Site is currently being configured by another administrative operation“的问题
  9. Exchange2010批量建用户及通讯地址簿更新
  10. 七款非常好用的电脑数据恢复软件推荐
  11. handlersocket mysql,MySQL插件HandlerSocket
  12. 解除电脑宽带限制,提升电脑网速
  13. 由南非世界杯想到IDC
  14. .NET 再出发, 20岁生日快乐
  15. 30岁程序媛在一家公司工作八年后,告别“体制化”终于跳槽,别再妄想靠公司养老了!
  16. 【面试题】「2023」JavaScript 最新高频 前端面试题 指南 (必看)
  17. 软考高项 : (22)2016年下半年论文写作真题
  18. 十一假期,分享几个好玩儿的GitHub项目
  19. 漫画:设计模式六大原则(上)
  20. 00、老徐教你学C语言——C语言学习之道(学习篇)——理论

热门文章

  1. 8.16Switch选择结构
  2. 计算机网络最基础论文题目,计算机网络基础知识类论文题目 计算机网络基础知识论文题目哪个好...
  3. 网桥的工作原理与应用
  4. 机器学习之贝叶斯分类
  5. iis7配置shopex总结,shopex乱码问题最终原因解决办法
  6. 关于tcp分段和ip分片
  7. 中文生成模型T5-Pegasus详解与实践
  8. 长时间居家度过疫情的经验
  9. 【Java中的UUID是什么?】
  10. 激光干涉仪角度检测机床加工精度