ASP.NET实现推送文件到浏览器的方法

 更新时间:2015年06月25日 09:35:30   作者:小卒过河  
这篇文章主要介绍了ASP.NET实现推送文件到浏览器的方法,可实现将文件推送到浏览器供用户浏览或下载的功能,需要的朋友可以参考下

本文实例讲述了ASP.NET实现推送文件到浏览器的方法。分享给大家供大家参考。具体分析如下:

这里主要实现从服务器到浏览器,推送文件,提供用户下载/浏览的功能。

提示: 在AJAX UpdatePanel里面将无效。如果代码从按钮单击事件中被调用,该按钮需要在 AJAX UpdatePanel的外部。

具体代码如下:

/// <summary>
/// Downloads (pushes) file to the client browser. 
/// **** NOTE **** Cannot be done from inside an AJAX UpdatePanel control.
/// </summary>
/// <param name="fullFilePath">The full file path of the file</param>
protected void DownloadFile(string fullFilePath)
{
  // Gets the File Name
  string fileName = fullFilePath.Substring(fullFilePath.LastIndexOf('\\') + 1);
  byte[] buffer;
  using (FileStream fileStream = new FileStream(fullFilePath, FileMode.Open))
  {
    int fileSize = (int)fileStream.Length;
    buffer = new byte[fileSize];
    // Read file into buffer
    fileStream.Read(buffer, 0, (int)fileSize);
  }
  Response.Clear();
  Response.Buffer = true;
  Response.BufferOutput = true;
  Response.ContentType = "application/x-download";
  Response.AddHeader("Content-Disposition", "attachment; filename=" + fileName);
  Response.CacheControl = "public";
  // writes buffer to OutputStream
  Response.OutputStream.Write(buffer, 0, buffer.Length);
  Response.End();
}

希望本文所述对大家的asp.net程序设计有所帮助。

相关文章

  • .net+FusionChart实现动态显示的柱状图和饼状图

    .net+FusionChart实现动态显示的柱状图和饼状图

    这篇文章介绍了.net+FusionChart实现动态显示柱状图和饼状图的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • ASP.NET Core实现动态获取文件并下载

    ASP.NET Core实现动态获取文件并下载

    这篇文章介绍了ASP.NET Core实现动态获取文件并下载的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-01-01
  • asp.net Gridview数据列中实现鼠标悬浮变色

    asp.net Gridview数据列中实现鼠标悬浮变色

    Gridview一般朋友们都比较常用,因为它可以方便快捷的实现我们所需的很多功能,代码也比较简洁。平时的项目中这个控件我也比较常用,其中有个功能用到的频率也比较多。所以记录下备忘。
    2010-06-06
  • asp.net在Repeater嵌套的Repeater中使用复选框详解

    asp.net在Repeater嵌套的Repeater中使用复选框详解

    这篇文章主要介绍了asp.net在Repeater嵌套的Repeater中使用复选框,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • .NET的DateTime函数获取上个月的起始和截止时间的方法

    .NET的DateTime函数获取上个月的起始和截止时间的方法

    这篇文章主要介绍了NET的DateTime函数获取上个月的起始和截止时间的方法,可广泛使用于报表中的时间自动选择功能,是非常实用的技巧,需要的朋友可以参考下
    2015-01-01
  • .NET 9 中的 多级缓存 HybridCache示例详解

    .NET 9 中的 多级缓存 HybridCache示例详解

    HybridCache是.NET9中引入的一种新的缓存模型,它封装了本地缓存和分布式缓存,简化了缓存操作并提供了标签删除和约束选项,本文给大家介绍.NET 9 中的 多级缓存 HybridCache,感兴趣的朋友一起看看吧
    2024-12-12
  • .Net Core日志记录之自定义日志组件

    .Net Core日志记录之自定义日志组件

    这篇文章介绍了.Net Core日志记录之自定义日志组件,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • .NET5控制台程序使用EF连接MYSQL数据库的方法

    .NET5控制台程序使用EF连接MYSQL数据库的方法

    这篇文章主要介绍了.NET5控制台程序使用EF连接MYSQL数据库,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08
  • .net core如何利用ConcurrentTest组件对方法进行压力测试详解

    .net core如何利用ConcurrentTest组件对方法进行压力测试详解

    这篇文章主要给大家介绍了关于.net core如何利用ConcurrentTest组件对方法进行压力测试的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧
    2018-11-11
  • ASP.NET微信公众号添加菜单

    ASP.NET微信公众号添加菜单

    这篇文章主要为大家详细介绍了ASP.NET微信公众号添加菜单的相关代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-11-11

最新评论