ASP.Net下载大文件的实现方法
本文实例讲述了ASP.Net下载大文件的实现方法。分享给大家供大家参考。具体分析如下: 当我们的网站需要支持下载大文件时,如果不做控制可能会导致用户在访问下载页面时发生无响应,使得浏览器崩溃。可以参考如下代码来避免这个问题。 关于此代码的几点说明: 1. 将数据分成较小的部分,然后将其移动到输出流以供下载,从而获取这些数据。 2. 根据下载的文件类型来指定 Response.ContentType 。(参考OSChina的这个网址可以找到大部分文件类型的对照表:http://tool.oschina.net/commons) 3. 在每次写完response时记得调用 Response.Flush() 4. 在循环下载的过程中使用 Response.IsClientConnected 这个判断可以帮助程序尽早发现连接是否正常。若不正常,可以及早的放弃下载,以释放所占用的服务器资源。 5. 在下载结束后,需要调用 Response.End() 来保证当前线程可以在最后被终止掉。 复制代码 代码如下: namespace WebApplication1 // Buffer to read 10K bytes in chunk: // Length of the file: // Total bytes to read. // Identify the file to download including its path. // Identify the file name. try // Total bytes to read. Response.Clear(); // Read the bytes. // Write the data to the current output stream. // Flush the data to the HTML output. buffer = new Byte[10000]; (编辑:台州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc-3 – 在MVC Razor View中使用If语句
- asp.net – 访问asp:从代码背后的内容
- 什么OverrideAuthenticationAttribute是为什么?
- asp.net-mvc – ASP.NET MVC如何在生产中禁用调试路由/视图
- asp.net-mvc-3 – “区域”文件夹中的样式,脚本和图像
- 在asp.net App_Code目录中使用Nemerle
- asp.net使用H5新特性实现异步上传的示例
- IIS ASP.NET WebApi在请求同一台服务器时死锁
- asp.net-mvc-3 – 在MVC 3.0中重写Html.BeginForm()并保持不
- asp.net-mvc – 如何从剃刀视图访问My.Resources