【网上购物论坛】-IT泡吧![Www.itpob.Cn]网上购物社区! - Powered by Discuz!
http://www.itpob.cn/
ASP.NET文件下载函数的使用使得我们的程序操作有了明显的提升,那么本文就向你介绍ASP.NET文件下载函数的相关信息。
-
Page.Response.Clear();
-
bool success = ResponseFile(Page.Request, Page.Response, "目的文件名称", @"源文件路径", 1024000);
-
if (!success)
-
Response.Write("下载文件出错!");
-
Page.Response.End();
ASP.NET文件下载函数代码为:
-
public static bool ResponseFile(HttpRequest _Request,HttpResponse _Response,string _fileName,string _fullPath, long _speed)
-
{
-
try
-
{
-
FileStream myFile = new FileStream(_fullPath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
-
BinaryReader br = new BinaryReader(myFile);
-
try
-
{
-
_Response.AddHeader("Accept-Ranges", "bytes");
-
_Response.Buffer = false;
-
long fileLength = myFile.Length;
-
long startBytes = 0;
-
-
double pack = 10240;
-
-
int sleep = (int)Math.Floor(1000 * pack / _speed) + 1;
-
if (_Request.Headers["Range"] != null)
-
{
-
_Response.StatusCode = 206;
-
string[] range = _Request.Headers["Range"].Split(new char[] {'=', '-'});
-
startBytes = Convert.ToInt64(range[1]);
-
}
-
_Response.AddHeader("Content-Length", (fileLength - startBytes).ToString());
-
if (startBytes != 0)
-
{
-
-
}
-
_Response.AddHeader("Connection", "Keep-Alive");
-
_Response.ContentType = "application/octet-stream";
-
_Response.AddHeader("Content-Disposition","attachment;filename=" + HttpUtility.UrlEncode(_fileName,System.Text.Encoding.UTF8) );
-
-
br.BaseStream.Seek(startBytes, SeekOrigin.Begin);
-
int maxCount = (int) Math.Floor((fileLength - startBytes) / pack) + 1;
-
-
for (int i = 0; i < maxCount; i++)
-
{
-
if (_Response.IsClientConnected)
-
{
-
_Response.BinaryWrite(br.ReadBytes(int.Parse(pack.ToString())));
-
Thread.Sleep(sleep);
-
}
-
else
-
{
-
i=maxCount;
-
}
-
}
-
}
-
catch
-
{
-
return false;
-
}
-
finally
-
{
-
br.Close();
-
-
myFile.Close();
-
}
-
}
-
catch
-
{
-
return false;
-
}
-
return true;
-
}
这样就实现了文件下载时,不管是什么格式的文件,都能够弹出打开/保存窗口.
ASP.NET文件下载函数的基本情况就向你介绍到这里,希望对你了解ASP.NET文件下载函数有所帮助。
分享到:
相关推荐
ASP.NET是微软开发的一种用于构建动态网站、web应用和web服务的框架。在涉及网络数据库安全性的...通过阅读"ASP.NET网络数据库安全性浅析.pdf"这样的资料,可以进一步了解并掌握这些关键技术点,从而提升应用的安全性。
防止XSS攻击,开发者应启用ASP.NET的内置XSS防护,如HttpEncoder.HtmlEncode()函数进行输出编码;同时,对用户提交的内容进行过滤或转义。 三、跨站请求伪造(CSRF) CSRF攻击利用了浏览器的同源策略漏洞,诱使用户在...
ASP.NET中的Repeater控件是一种非常...Repeater控件的灵活性和可扩展性使其在ASP.NET开发中成为强大的工具,能够根据具体需求定制复杂的数据展示效果。理解并熟练运用以上技巧,将有助于提升Web应用的数据呈现能力。
【ASP.NET笔试题浅析】 ASP.NET笔试题涵盖了C#和.NET框架的基础知识,以及ASP.NET应用程序开发的关键概念。以下是一些重点知识点的详细解析: 1. **类和结构的区别**: - 类是引用类型,结构是值类型。这意味着类...
浅析PHP与ASP.NET的优劣性 文章概要:本文将对比 PHP 和 ASP.NET 的优劣性,探讨两个技术的特点和缺陷,从而帮助开发者选择合适的技术来实施项目。 一、ASP.NET 的优劣性 ASP.NET 是一个完整的框架,提供了真实的...
- 使用`<asp:ListView>`服务器控件来展示购物车中的物品列表,这比传统的字符串拼接方式更加易于维护和管理。 - 在`<asp:ListView>`控件中,`<LayoutTemplate>`定义了整体布局,而`<ItemTemplate>`定义了每一项...
- 下载并安装 ASP.NET Core 2.0 SDK。 - 配置开发环境。 **1.3 创建 ASP.NET Core 应用程序** - **控制台应用**: - 命令行操作: 使用 `dotnet new console` 创建新项目。 - 修改 `Program.cs` 文件以运行程序。...
本文将重点介绍如何在ASP.NET框架下实现这一功能。 #### ASP.NET简介 ASP.NET是由微软开发的一款用于构建动态Web应用程序的服务器端技术。它基于.NET Framework,并支持多种编程语言,如C#、VB.NET等。ASP.NET提供...
自动启动,先行初始化web应用,而不必等待外部客户端访问web服务器时才启动的能力。...今天使用 ASP.NET 的开发人员经常使用应用的Global.asax 文件中的 “Application_Start”事件处理函数来做这些工作
在服务器端,开发者可以提供一个与之关联的函数(在本例中为ValidateName),该函数将执行实际的验证检查。 例如,开发者可能希望检查用户名是否已被注册,这通常涉及到数据库查询。使用CustomValidator,可以这样...
实现ASP.NET生成随机密码功能是很容易的,下面的代码给出了完整的实现方法: 代码如下: publicstaticstringMakePassword(stringpwdchars,intpwdlen) { stringtmpstr=””; intiRandNum; Randomrnd=newRandom(); for...
本文将深入探讨Ajax的核心概念、使用方式,以及在ASP.NET环境中使用AjaxPro.dll框架的实践。 ### 1. Ajax核心概念 - **异步通信**:Ajax的核心是异步,意味着用户可以继续与网页交互,而无需等待服务器响应。 - **...
以上介绍了六种在 ASP.NET 中使用 JavaScript 实现返回上一页的方法。每种方法都有其适用场景和特点,开发者可以根据实际需求选择合适的方法来实现所需功能。对于需要保留表单数据的情况,推荐使用 `history.back()`...
这个特性在ASP.NET Core框架中被广泛使用,通过`AddJsonFile`扩展方法实现。下面我们将深入探讨`AddJsonFile`的工作原理以及`ReloadOnChange`如何实现。 首先,我们来看`AddJsonFile`的基本用法。在ASP.NET Core的...
当使用ASP.NET的普通页面(aspx)时,服务器端可以直接返回JSON格式的数据。在jQuery的Ajax请求中,`dataType`设置为"json",后台代码如示例所示,直接将JSON字符串写入响应流,前端的success回调中的`data`参数...
6. 常用扩展:Autofac与其他技术(如ASP.NET MVC、Web API、WCF等)有很好的集成,可以通过特定的扩展方法方便地配置和使用。 总结,依赖注入框架Autofac提供了一种优雅的方式来管理和解耦代码中的依赖关系,提高了...
这部分内容涉及arcGIS Server与.NET环境的集成,讲解如何使用ArcGIS Server Web ADF(Application Development Framework)和ASP.NET AJAX构建Web GIS应用。学习者将学习到如何利用这些技术开发交互式、高性能的...
在ASP.NET开发中,Repeater控件是一种非常实用的服务器控件,用于呈现数据源中的数据,具有高度自定义的灵活性。本篇文章主要探讨了如何使用Repeater控件进行原样导出数据以及如何动态地显示或隐藏Repeater中的列。 ...