Asp.Net超大文件上传问题解决_实用技巧

  最近涉及到用asp.net做上传功能的一个问题,因为asp.net有fileupload的上传控件,但是这个控件上传的文件大小有限,所以根本满足不了需求
百度了下,很多人遇到asp.net上传超大文件的困惑,偶尔搜索发现csdn有个哥们提到这个超大文件如何实现,RadUpload.Net2.dll并且提供了这个动态库进行处理超大文件的上传处理过程。于是就下载下来看了看,果然效果不错,不但支持吵过700M的文件上传快速,更重要的是支持多线程的上传文件。
查看源代码发现利用的控件也是fileupload的控件,但是处理的过程调用的是RadUpload.Net2.dll处理的。
上传后文件存放到bin下面的upload文件夹下面,并且可以对上传的文件进行重新命名。

RadUpload.Net2.dll:下载地址

1.创建一个aspx的页面。
2.创建<asp:FileUpload ID="FileUpload1" runat="server" />。
3.创建<asp:Button ID="Button3" runat="server" Text="上传" OnClick="Button1_Click" />
4.上传代码中调用net2.dll的动态库处理过程。
5.如果创建多个上传文件,可以多写几个<asp:FileUpload ID="FileUpload1" runat="server" />。
6.最后单击上传按钮,执行其中处理过程。
具体过程如下

复制代码 代码如下:

 foreach (UploadedFile file in RadUploadContext.Current.UploadedFiles)
            {
                string Path = Server.MapPath(@"~/Uploads");

                //如果路径不存在,则创建
                if (System.IO.Directory.Exists(Path) == false)
                {
                    System.IO.Directory.CreateDirectory(Path);
                }

                //组合路径,file.GetName()取得文件名
                string oldfilename = file.GetName().ToString();

                //如果对上传后的文件进行重新命名,根据guid进行命名,则放开下面二行代码
                //string fileType = oldfilename.Substring(oldfilename.LastIndexOf("."));
                //string newfilename = Guid.NewGuid().ToString("N") + fileType;
                //Path = Path + "/" + file.GetName().ToString();
                Path = Path + "/" + oldfilename;

                //保存
                file.SaveAs(Path, true);
                string newurl = @"~/Uploads/" + oldfilename;             
            }

时间: 2024-11-08 21:16:56

Asp.Net超大文件上传问题解决_实用技巧的相关文章

asp.net批量多选文件上传解决方案_实用技巧

多选文件上传,已经非常多了,选择性多了可能有时候要比较下哪个更合适,结合到项目中使用更方便才是最重要的.很多的多选上传基本上都是调用的swf文件,确实用flash 或flex开发一个多选上传的功能很方便,比如flex里内置的FileReferenceList对象本身就支持文件的多选,有这个的话就方便多了,下面要说的主要也是基于flex开发的一个多选上传功能.主要实现的功能如下: 一.选择多个文件上传并显示单个文件的上传进度 二.显示所有文件总的上传进度 三.显示所有上传文件的总大小 四.上传前可

asp.net 简便无刷新文件上传系统_实用技巧

ps:flash实现的效果是好得多,但这不是我研究的范围,也没什么可比性. 兼容:ie6/7/8, firefox 3.5.5, opera 10.01, safari 4.0.3, chrome 3.0 效果预览 文件上传 选择文件 重命名 操作 状态 重置 选择文件 重置 选择文件 重置 选择文件 ps:由于需要后台,要测试系统请下载实例测试. ps2:在完整实例文件中,还有一个文件属性查看实例. 程序说明 [upload] 程序中最重要的方法就是upload了,调用它就可以进行无刷新上传.

ASP.NET实现的简单易用文件上传类_实用技巧

调用方法: UploadFile uf = new UploadFile(); /*可选参数*/ uf.SetIsUseOldFileName(true);//是否使用原始文件名作为新文件的文件名(默认:true),true原始文件名,false系统生成新文件名 uf.SetFileDirectory(Server.MapPath("/file/temp3/"));//文件保存路径(默认:/upload) uf.SetFileType("*");//允许上传的文件类

asp.net neatUpload 支持大文件上传组件_实用技巧

1.在工具箱中添加Brettle.Web.NeatUpload.dll,可以看到工具箱中出现InputFile等控件. 2.复制文件夹NeatUpload到根目录. 3.拖放使用上传控件InputFile和进度条ProgressBar,添加上传文件的按钮.aspx页面代码如下: 复制代码 代码如下: <body> <form id="form1" runat="server"> <div> <upload:InputFile

C# 通用文件上传类_实用技巧

1.Upfile.aspx: 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Upfile.aspx.cs" Inherits="Inc_Upfile" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http

asp.net超大文件上传方法

asp教程.net超大文件上传方法 asp.net教程大文件上传是一个不完善和有缺陷的领域,相信在不久会得到提高和发展,如果你已经解决了,说明你在一个好公司,否则你可以考虑使用第三方产品来解决了.文件上传的问题,我们都能够找到很多种不同的方法来解决,挑战在于找出不同做法的利弊然后找到一个适用于自己项目的方案,这不仅仅是在文件上传这一个方面!   <asp:image id="imglogo" runat="server" /><br/> &l

asp.net core实现文件上传功能_实用技巧

本文实例为大家分享了单文件上传.多文件上传的功能,供大家参考,具体内容如下 单文件上传 上传文件在Web应用程序中是一个常见的功能.在asp.net core中上传文件并保存在服务器上,是很容易的.下面就来演示一下怎么样在 ASP.NET Core项目中进行文件上传.  首先,创建一个 asp.net core 项目,然后在Controller文件件添加一个HomeController,然后在 Views 文件夹的 Home 文件夹里添加一个 New.cshtml 视图文件.如下图:  添加一个

ASP.NET实现大文件上传功能_实用技巧

需要下载NeatUpload插件 上传页面: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="index.aspx.cs" Inherits="_Default" %> <%@ Register Assembly="Brettle.Web.NeatUpload" Namespace="Brettle.Web.Neat

无组件实现文件上传/下载_应用技巧

' 用ASP实现无组件上传/下载文件  '  ' 功能简介   ' 将上传的文件数据保存到数据库中,可以处理表单中的多个上传文件的情况  ' 适用于各种数据库,使用ADO的方法连接数据库  ' 本示例中使用的是ACCESS数据库:zj.mdb  ' 表:tb_img(id int(自增列),path text(255) 保存上传文件的目录  ' ,fname text(250) 保存上传的文件名,type test(250) 保存上传文件的类型  ' ,img ole对象 保存上传的文件内容