在 ASP.NET 开发的过程中,文件上传往往使用自带的 FileUpload 控件,可是用过的人都知道,这个控件的局限性十分大,最大的问题就在于上传大文件时让开发者尤为的头疼,而且,上传时无法方便的做到多线程的操控和上传进度的显示。在此给大家推荐一款简单易用的上传组件,从而快速便捷得解决了 ASP.NET 中的大文件上传问题。
首先,我们需要这个名为 RanUpLoad 的组件(下面例子中附带),这两个 dll 文件添加到项目的引用中区,xml 文件也要复制在项目中的 bin 文件夹下,也就是最后三个文件都要存在于 bin 文件夹中。
接着,上传控件还是用 ASP.NET 中自带的 FileUpload 控件,需要添加的就是在 FileUpload 控件旁边加入标签:
<radU:RadProgressManager ID="Radprogressmanager1" Width="100%" runat="server" /> <radU:RadProgressArea ID="progressArea1" Width="100%" runat="server"></radU:RadProgressArea>
并且在 前台页面aspx 文件的起始处添加如下代码:
<form id="form1" runat="server"> <div> <radU:RadProgressManager ID="Radprogressmanager1" Width="100%" runat="server" /> <radU:RadProgressArea ID="progressArea1" Width="100%" runat="server"> </radU:RadProgressArea> <asp:FileUpload runat="server" ID="fileUPload" /> <asp:Button runat="server" ID="fileUpladBtn" Text="上传" OnClick="fileUpladBtn_OnClick" /> </div> </form>
当然,配置文件的 <system.web> 标签中不能忘记下面这些语句:
<!--文件上传控件配置--> <httpRuntime executionTimeout="3600" maxRequestLength="2097151" ></httpRuntime> <httpModules> <add name="RadUploadModule" type="Telerik.WebControls.RadUploadHttpModule, RadUpload.Net2"/> </httpModules> <httpHandlers> <add verb="*" path="Telerik.RadUploadProgressHandler.aspx" type="Telerik.WebControls.RadUploadProgressHandler, RadUpload.Net2"></add> </httpHandlers>
下面就是后台文件上传操作
protected void fileUpladBtn_OnClick(object sender, EventArgs e) { if (RadUploadContext.Current == null) { return; } if (RadUploadContext.Current.UploadedFiles.Count <= 0) { this.Page.ClientScript.RegisterStartupScript(this.Page.GetType(), "MsgBox", "<script>alert('请选择上传文件 !')</script>"); return; } if (RadUploadContext.Current.UploadedFiles[0].ContentLength >= 2147483647) { this.Page.ClientScript.RegisterStartupScript(this.Page.GetType(), "MsgBox", "<script>alert('上传的文件不得超过 2GB !')</script>"); return; } UploadedFile file = RadUploadContext.Current.UploadedFiles[0]; string fileName = Path.GetFileName(file.FileName); string virtualPath = System.IO.Path.Combine("~/Files", fileName); string savePath = this.MapPath(virtualPath); file.SaveAs(savePath, true); }
相关推荐
觉得不错,但是有个不足的地方,就是当我上传一个文件时把页面关闭的时候 这个文件其实还在上传着!
asp.net 大文件上传 asp.net 2.0 断点上传
基于webuploader的asp.net大文件分片上传,最大可以上传5G左右的东西
asp.net大文件上传,10M以上的文件上传。
基于jquery.form插件写的ASP.NET文件批量上传。
ASP.NET多文件上传 ASP.NET多文件上传 ASP.NET多文件上传 ASP.NET多文件上传
可以实现超大文件上传,但是不能断点上传。
ASP.NET 大文件上传组件ASP.NET 大文件上传组件
asp.net大文件上传控件
从自己项目中摘录下来的asp.net大文件上传源码,含前后端源码. 附一个视频上传页面Demo。
asp.net 超大文件上传服务器,含断点续传,分块秒传,2G,3G文件上传不是梦,上传类型不限制,前端页面带进度条
asp.net上传 可以上传无限大小的文件,同时可以选择多个,也可以设置上传大小
ASP.NET的文件上传功能,可上传大文件,缺点就是上传大文件的时候程序加载文件的时间有点长,文件越大加载的速度就越慢,所以使用时要有耐心,对于500MB一下的文件加载还是挺快的。可自己在配置文件中修改上传文件的...
asp.net中多文件上传源代码例子
asp.net 多文件上传组件及实例asp.net 多文件上传组件及实例asp.net 多文件上传组件及实例asp.net 多文件上传组件及实例
各种注视用户体验的程序出现,比如带进度条的文件上传,看了网上很多资料还没找到真正意义上的ASP.NET实现进度条上传.Ajax 文件上传进度条,ASP.NET 文件上传进度条示例,ASP.NET 文件上传,asp.net文件上传,ajax文件...
【ASP.NET编程知识】ASP.NET Core文件上传与下载实例(多种上传方式).docx
我自己用ASP.NET做的大文件上传和下载的小项目,可以直接运行 其中用到JQUERY右键菜单插件,NeatUpload大文件上传插件,弹出窗口插件
asp.net大文件上传源码(上传大小无限制).asp.net大文件上传源码(上传大小无限制).