关于asp.net Response流下载文件 遇到自带多线程下载器的浏览器出现的问题

问题描述

源码如下:TempPath是文件的路径FileInfoDownloadFile=newFileInfo(TempPath);TempPath=TempPath.Substring(TempPath.LastIndexOf("\")+1);Response.Clear();Response.ClearHeaders();Response.ClearContent();Response.Buffer=true;Response.ContentType="application/octet-stream";Response.AppendHeader("Content-Disposition","attachment;filename="+HttpUtility.UrlEncode(TempPath,System.Text.Encoding.UTF8));Response.AppendHeader("Content-Length",DownloadFile.Length.ToString());Response.WriteFile(DownloadFile.FullName);Response.Flush();Response.Clear();Response.Close();现在一些主流的浏览器像360,搜狗等都自己带有多线程下载,这就造成每次执行我的下载业务逻辑时浏览器总是同时发出很多个线程,造成程序重复访问页面,这个问题怎么解决?

解决方案

解决方案二:
http多线程下载是依靠httphead中的Range:bytes=1024-这种断点续传标识来实现的。你如果不想让用户断点续传,你就判断一下这个头就好了,有这个头的就不执行就好了。另外也可以根据这个值,改一下程序让程序支持多线程下载,随你自己意好了。
解决方案三:
这个说的很明白,你看下吧。
解决方案四:
这个网址上的东西,我看过了并不适合我的问题。本人比较愚钝,能不能说的再清楚些?
解决方案五:
http多线程下载是依靠httphead中的Range:bytes=1024-这种断点续传标识来实现的。你如果不想让用户断点续传,你就判断一下这个头就好了,有这个头的就不执行就好了。这个说的还不明白么,判断Range有值就return。

时间: 2024-09-11 10:31:46

关于asp.net Response流下载文件 遇到自带多线程下载器的浏览器出现的问题的相关文章

asp.net 未能加载文件或程序集“XXX”或它的某一个依赖项。试图加载格式不正确的程序。_实用技巧

说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息. 异常详细信息: System.BadImageFormatException: 未能加载文件或程序集"XXX"或它的某一个依赖项.试图加载格式不正确的程序. 源错误: 执行当前 Web 请求期间生成了未处理的异常.可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息. 程序集加载跟踪: 下列信息有助于确定程序集"XXX"无法加载的

求道不远人--深入解析ASP.NET 2.0控件开发pdf书的下载地址

问题描述 求<<道不远人--深入解析ASP.NET2.0控件开发>>pdf书的下载地址 解决方案 解决方案二:这个论谈里面有下载啊解决方案三:http://download.csdn.net/detail/heqian2000/1604281解决方案四:现在能耐下心看这种WEBFORM书的人不多了,基本都是去MVC了.这本书我当时也买了,当时基本看不明白,以自定义控件开发为主讲回发,VIEWSTATE,页面生命周期中的相关事件,页面生命周期,请求的19个事件.其实很多东西,我即便到

ASP.NET(C#) Web Api通过文件流下载文件的实例_实用技巧

下载文件到本地是很多项目开发中需要实现的一个很简单的功能.说简单,是从具体的代码实现上来说的,.NET的文件下载方式有很多种,本示例给大家介绍的是ASP.NET Web Api方式返回HttpResponseMessage下载文件到本地.实现的方法很简单,其中就是读取服务器的指定路径文件流,将其做为返回的HttpResponseMessage的Content.直接贴出DownloadController控件器的代码: using System; using System.Collections.

未能加载文件或程序集-asp.net5添加引用报错

问题描述 asp.net5添加引用报错 project.json代码 "dependencies": { "Microsoft.AspNet.Mvc": "6.0.0-beta5", "Microsoft.AspNet.Server.IIS": "1.0.0-beta5", "Microsoft.AspNet.Server.WebListener": "1.0.0-beta5&

asp net membership-未能加载文件或程序集的问题

问题描述 未能加载文件或程序集的问题 未能加载文件或程序集"System.Runtime.Caching, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"或它的某一个依赖项.系统找不到指定的文件. 解决方案 重新引用下System.Runtime.Caching 或者你部署的.net版本不正确. 解决方案二: System.Runtime.Caching的dll文件没有,或者版本不对应 解决方案三:

System.BadImageFormatException: 未能加载文件或程序集“Oracle.DataAccess”或它的某一个依赖项。试图加载格式不正确的程序。

        本机环境:Win7 32位,开发工具:vs2008         今天更新webservices的时候,如下图:               报出了下面的错误:                  在服务端打开asmx文件时,错误信息如下: "/"应用程序中的服务器错误. 未能加载文件或程序集"Oracle.DataAccess"或它的某一个依赖项.试图加载格式不正确的程序. 说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟踪信息,

“未能加载文件或程序集”解决方法(URLRewriter.dll)

一般情况下出现这样的问题是因为.dll文件不存在或者路径不正确.但今天我遇到的情况都不在这两个内.我确定.dll文件是存在的,路径也是正确的.但是程序死活都是"未能加载文件或程序集"的错误.无奈之下只好求助网络,很快在"CSDN"里找到了下面的帖子: 关于"未能加载文件或程序集"的解决方法 - dreamman - dreamman我把服务器上的一个asp.net程序下载到本地机XP系统上安装,设置了虚拟目录后用浏览器打开,一切正常.但我重启电脑

ASP.NET:DataGrid控件的分页功能

asp.net|datagrid|datagrid控件|分页 DataGrid 控件是一个基于模板样式的.多功能的.多列的数据绑定控件.在三个数据绑定控件中,DataGrid是功能最为强大的,其次时DataList控件,然后是轻量级的数据绑定控件Repeater.要自定义 DataGrid 中各列的布局,您可以将列类型设置为"模板",然后修改列的模板.DataGrid 控件也可以无需模板,只需按照默认的设置即可进行呈现,这使得该控件成了用于报告方案的理想控件.      我们可以把Da

ASP.NET:DataGrid控件的排序功能

asp.net|datagrid|datagrid控件|排序 上一节我们已经知道DataGrid排序功能是由AllowSorting属性控制的,这一小节里,我们将通过实例来验证这个功能.     在DataCon Web项目里,添加一个窗体,命名为DataGrid_Sample4.aspx,添加一个DataGrid控件,DataGrid_Sample4.aspx的主要HTML代码如下:<body MS_POSITIONING="GridLayout"><form id