`
zxlyecf2
  • 浏览: 133134 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ASP.NET 大文件上传的简单处理

阅读更多

在 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" />
        &nbsp;&nbsp;&nbsp;
        <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); 
        }

 

4
1
分享到:
评论
1 楼 zssggg 2014-02-27  
被大文件上传困扰了好长时间,现在终于解决了。

相关推荐

    asp.net 超大文件上传,带进度条源码,亲测能用

    在处理大文件上传时,ASP.NET需要特别的处理,因为默认情况下,它对上传文件的大小有限制,通常为4MB左右。针对超大文件上传的需求,开发者通常需要采取一些策略来优化和扩展这一功能,同时加入进度条显示可以提升...

    asp.net大文件上传(批量)

    首先,我们需要了解ASP.NET文件上传的基本原理。在ASP.NET中,文件上传是通过HttpPostedFileBase对象来处理的,它包含了上传文件的相关信息,如文件名、类型、长度等。但是,由于HTTP协议本身的限制,单个请求不能...

    ASP.NET 大文件上传组件

    ASP.NET大文件上传组件是为了解决在ASP.NET框架下处理大文件上传问题而设计的工具。在默认情况下,ASP.NET对于单个文件上传的大小有限制,这往往不足以满足某些业务需求,如视频分享、大数据导入等场景。因此,开发...

    asp.net大文件上传源码

    然而,标准的ASP.NET文件上传机制对单个文件大小有限制,通常为2-4MB,这在处理大文件时会显得不足。 SWFFileUploader是一个流行的JavaScript库,它允许在浏览器端实现大文件分块上传。该库利用Adobe Flash技术来绕...

    【ASP.NET编程知识】asp.net单文件带进度条上传的解决方案.docx

    本文主要讲述了ASP.NET单文件带进度条上传的解决方案,通过使用jquery框架和ASP.NET缓存机制,实现了文件上传和进度条显示的功能。 知识点1:使用jquery框架实现文件上传 在本文中,我们使用jquery框架来实现文件...

    asp.net大文件上传组件+源程序.rar

    在ASP.NET开发中,大文件上传是一个常见的需求,特别是在处理如视频、图像库或大型数据库备份等场景。ASP.NET 2.0版本虽然在默认情况下对文件上传...对于需要处理大文件上传的ASP.NET开发者来说,这是一个宝贵的资源。

    asp.net 批量上传文件

    在ASP.NET中实现批量文件上传是一项常见的需求,尤其在处理大量用户数据时。在这个场景下,我们可以使用jQuery库中的`jquery.form`插件来增强页面的交互性,并结合ASP.NET后端技术,实现异步、无刷新的批量文件上传...

    基于webuploader的asp.net大文件分片上传

    总的来说,"基于webuploader的asp.net大文件分片上传"项目为开发者提供了一个实现大文件上传的完整方案,结合前端JavaScript和后端ASP.NET,可以构建出高效、可靠的文件上传系统,满足5G级别的大文件上传需求。

    .net大文件上传

    在.NET框架中,处理大文件上传是一项常见的任务,特别是在开发Web应用程序时。由于大文件可能超过服务器或HTTP协议默认允许的大小,因此需要特殊的技术来确保上传过程的稳定性和效率。以下是对`.NET大文件上传`这个...

    asp.net大文件上传

    使用ASP.NET MVC的异步控制器或Web API,可以在不阻塞主线程的情况下处理大文件上传,提高系统性能。异步操作可以避免长时间上传导致的IIS工作进程阻塞问题。 4. **进度条显示**: 如果是用户界面,可以利用...

    asp.net 大文件上传 超过2G

    在处理大文件上传时,ASP.NET默认设置存在一定的限制,通常不超过4MB。然而,随着互联网的发展,用户可能需要上传更大的文件,如高清视频、大型数据库备份或大型设计文件。因此,"ASP.NET 大文件上传 超过2G"这个...

    asp.net上传大文件

    标题“asp.net上传大文件”表明我们将讨论如何在ASP.NET框架下处理大容量的文件上传。描述提到,不仅可以上传无限大小的文件,还能实现多文件选择,并且可以设定上传文件的大小限制,这涉及到了文件上传的性能优化和...

    ASP.NET大文件上传和下载小项目

    在“ASP.NET大文件上传和下载小项目”中,我们重点关注的是如何处理大文件的上传和下载,以及涉及到的几个关键组件和技术。 1. **大文件上传**:在传统的HTTP协议中,文件上传通常受到浏览器和服务器的限制,对文件...

    ASP.NET多文件上传

    ASP.NET多文件上传是Web开发中的一个重要功能,它允许用户一次性上传多个文件,极大地提高了用户交互性和效率。在ASP.NET框架中,实现这一功能需要掌握一些核心知识点。 首先,了解HTTP协议的基础至关重要。HTTP...

    【ASP.NET编程知识】ASP.NET Core文件上传与下载实例(多种上传方式).docx

    ASP.NET Core 文件上传与下载实例(多种上传方式) 知识点1: ASP.NET Core 文件上传与下载实例 ASP.NET Core 2.0 已经很成熟,可以使用模型绑定上传文件。官方文档提供了相关的示例代码,可以作为参考。 知识点2:...

    asp.net大文件上传控件

    ASP.NET大文件上传控件是Web开发中处理大文件上传的一种解决方案。在传统的ASP.NET框架中,由于HTTP协议的限制,文件上传大小通常受到限制,无法处理较大的文件。为了解决这个问题,开发者们创建了专用的控件和库,...

    asp.net 超大文件上传服务器

    在ASP.NET环境中,处理大文件上传是一个常见的挑战,特别是当涉及到超过几百MB甚至达到2G或3G的大文件时。ASP.NET MVC框架提供了一种优雅的方式来处理这种情况,通过结合断点续传和分块秒传技术,使得大文件上传变得...

Global site tag (gtag.js) - Google Analytics