ASP.Net下载大文件的实现方法
本篇章节讲解ASP.Net下载大文件的实现方法。分享给大家供大家参考。具体分析如下: 当我们的网站需要支持下载大文件时,如果不做控制可能会导致用户在访问下载页面时发生无响应,使得浏览器崩溃。可以参考如下代码来避免这个问题。 关于此代码的几点说明: 1. 将数据分成较小的部分,然后将其移动到输出流以供下载,从而获取这些数据。 2. 根据下载的文件类型来指定 Response.ContentType 。(参考OSChina的这个网址可以找到大部分文件类型的对照表:http://tool.oschina.net/commons) 3. 在每次写完response时记得调用 Response.Flush() 4. 在循环下载的过程中使用 Response.IsClientConnected 这个判断可以帮助程序尽早发现连接是否正常。若不正常,可以及早的放弃下载,以释放所占用的服务器资源。 5. 在下载结束后,需要调用 Response.End() 来保证当前线程可以在最后被终止掉。 复制代码 代码如下: using System; 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]; Response.End(); 希望本文所述对大家的asp.net程序设计有所帮助。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 在网站项目中使用SignalR
- asp.net core系列 37 WebAPI 使用OpenAPI (swagger)中间件
- 为什么ASP.NET框架在响应中添加“X-Powered-By:ASP.NET”H
- 初学ReactJS,写了一个RadioButtonList组件
- asp.net – 使用Visual Studio 2008 Web部署项目 – 找到as
- asp.net-web-api – 实现ASP.NET WebAPI版本控制的最佳方法
- 模型 – 视图 – 控制器 – ASP.NET MVC:将ViewModels嵌套
- asp.net – 我可以在DefaultModelBinder上禁用DataAnnotati
- asp.net – Hangfire如何为Web场工作?
- asp.net-mvc – ASP.NET DisplayFormat dd / MM / yyyy无效