最近涉及到用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;             
            }

标签:
超大,文件,上传

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
狼山资源网 Copyright www.pvsay.com

评论“Asp.Net超大文件上传问题解决”

暂无“Asp.Net超大文件上传问题解决”评论...

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?