一般10M以下的文件上传通过设置Web.Config,再用VS2005自带的FileUpload控件就可以了,但是如果要上传100M甚至1G的文件就不能这样上传了,这时可以用NeatUpload来上传,步骤如下:

1,在工具箱中添加Brettle.Web.NeatUpload.dll,方法:打开VS2005--->点击'工具箱'--->选中一项,如:'常规'这项--->单击右键--->在弹出的菜 单中选'选择项'--->在弹出的窗口中选择'浏览'--->找到'Brettle.Web.NeatUpload.dll'这个文件 --->按确定就添加上了,这时工具箱中多出几个控件出来,有InputFile,progressbar 等,我们主要用这两个.

2.复制文件夹NeatUpload到根目录.

3.拖放使用上传控件InputFile和进度条ProgressBar,添加上传文件的按钮.aspx页面代码如下:

 1  <% @ Page Language = " C# "  AutoEventWireup = " true "  CodeBehind = " LinkedContent.aspx.cs "
 2      Inherits = " Koodoo.Web.LinkedContent "   %>
 3 
 4  <% @ Register assembly = " Brettle.Web.NeatUpload "   namespace = " Brettle.Web.NeatUpload "  tagprefix = " Upload "   %>
 5 
 6  <! DOCTYPE html PUBLIC  " -//W3C//DTD XHTML 1.0 Transitional//EN "   " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd " >
 7  < html xmlns = " http://www.w3.org/1999/xhtml " >
 8  < head runat = " server " >
 9       < title ></ title >
10  </ head >
11  < body id = " linkedcontent " >
12       < form id = " form1 "  runat = " server " >
13       < div  class = " pagebox " >
14           < div  class = " innerbox " >
15           < Upload:InputFile ID = " attachFile "  runat = " server "   />
16           < asp:Button ID = " btnUpload "  Text = " 上传 "  runat = " server "  onclick = " btnUpload_Click "   />
17           < br  />
18           < Upload:ProgressBar ID = " ProgressBar1 "  runat = " server "   />
19          </ div >
20       </ div >
21       </ form >
22  </ body >
23  </ html >

4.给上传按钮添加Upload_Click事件:

 1       protected   void  Upload_Click( object  sender, EventArgs e)
 2      {
 3           if  (AttachFile.HasFile)
 4          {
 5               string  FileName  =   this .AttachFile.FileName; // 获取上传文件的文件名,包括后缀
 6               string  ExtenName  =  System.IO.Path.GetExtension(FileName); // 获取扩展名
 7               string  SaveFileName  =  System.IO.Path.Combine(
 8  System.Web.HttpContext.Current.Request.MapPath( " UpLoads/ " ),
 9   DateTime.Now.ToString( " yyyyMMddhhmm " )  +  ExtenName); // 合并两个路径为上传到服务器上的全路径
10              AttachFile.MoveTo(SaveFileName, Brettle.Web.NeatUpload.MoveToOptions.Overwrite);
11               string  url  =   " UpLoads/ "   +  DateTime.Now.ToString( " yyyyMMddhhmmss " )  +  ExtenName;   // 文件保存的路径
12               float  FileSize  =  ( float )System.Math.Round(( float )AttachFile.ContentLength  /   1024000 ,  1 );  // 获取文件大小并保留小数点后一位,单位是M
13           }
14      } 

5.注意,要还在Web.Config里进行设置:

 1    < configuration >  
 2 
 3  < configSections >    
 4 
 5  < sectionGroup  name ="system.web" >    
 6 
 7      < section  name ="neatUpload"
 8  type ="Brettle.Web.NeatUpload.ConfigSectionHandler,Brettle.Web.NeatUpload"  allowLocation ="true"   />    
 9 
10    </ sectionGroup >  
11 
12    </ configSections >   
13 
14  < system.web >  
15 
16  < httpModules >  
17 
18  <!--上传大文件 -->  
19 
20  < add  name ="UploadHttpModule"
21  type ="Brettle.Web.NeatUpload.UploadHttpModule,Brettle.Web.NeatUpload" />  
22 
23  </ httpModules >   
24 
25    <!-- useHttpModule="true" 设为true时才能看到上传状态,默认是False -->   
26 
27    < neatUpload  useHttpModule ="true"  maxNormalRequestLength ="1048576"  maxRequestLength ="1048576"  defaultProvider ="FilesystemUploadStorageProvider" >  
28 
29  < providers >   
30 
31  < add  name ="FilesystemUploadStorageProvider"
32  type ="Brettle.Web.NeatUpload.FilesystemUploadStorageProvider, Brettle.Web.NeatUpload" />  
33 
34  </ providers >   
35 
36  </ neatUpload >    
37 
38    < httpRuntime  maxRequestLength ="1048576"  executionTimeout ="3600" />  
39 
40  </ system.web >
41 
42  </ configuration >

最后这里是上面需要的文件和dll文件的源代码以及怎样用的例子
Brettle.Web.NeatUpload.dll源代码
NeatUpload文件夹
NeatUpload.dll Demo

大文件上传NeatUpload简单用法 (转)相关推荐

  1. 大文件上传 NeatUpload 控件

    因为要做一个大文件上传的功能,所以搜索了下.找到一个控件NeatUpload 而且这个空间是开源的 官网为http://www.brettle.com/neatupload 于是到官网去下了控件.它里 ...

  2. 大文件上传NeatUpload

    http://neatupload.codeplex.com/ http://neatupload.codeplex.com/SourceControl/network/forks/shiningri ...

  3. NeatUpload 大文件上传

    NeapUpload 作者地址:http://www.brettle.com/(抱着的那个小孩子蛮可爱的) 支持大文件上传的东东不少,可是不掏你钱包的寥寥无几了,找了好几天没找到其他合适的,AspUp ...

  4. NeatUpload:支持大文件上传 进度条

    NeatUpload:支持大文件上传 引用: NeatUpload可以让ASP.NET开发人员把磁盘上的文件通过流的方式上传并且可以监视上传进度 .它是开源的且在 Mono''s XSP/mod_mo ...

  5. 开源的大文件上传组件NeatUpload™

    支持.net 1.1 .NET 2.0 这里是 live demo 很不容易发现的,在.net下面要找个开源的东西真是难也. 当然大文件上传有很多组件比如ABCUPLOAD SlickUpload不过 ...

  6. 大文件上传服务器:支持超大文件HTTP断点续传的实现办法

    点击上方蓝色"方志朋",选择"设为星标"回复"666"获取独家整理的学习资料! 来源:blog.csdn.net/ababab12345/a ...

  7. 大文件上传服务器、支持超大文件HTTP断点续传实践总结

    点击关注公众号,实用技术文章及时了解 来源:blog.csdn.net/ababab12345/ article/details/80490621 最近由于笔者所在的研发集团产品需要,需要支持高性能的 ...

  8. vue大文件上传控件选哪个好?

    需求: 项目要支持大文件上传功能,经过讨论,初步将文件上传大小控制在20G内,因此自己需要在项目中进行文件上传部分的调整和配置,自己将大小都以20G来进行限制. PC端全平台支持,要求支持Window ...

  9. HTML5实现大文件上传

    需求: 项目要支持大文件上传功能,经过讨论,初步将文件上传大小控制在20G内,因此自己需要在项目中进行文件上传部分的调整和配置,自己将大小都以20G来进行限制. PC端全平台支持,要求支持Window ...

最新文章

  1. Silverlight 2.0 RTW 正式版发布(附下载地址)!
  2. 虚方法、重写方法和抽象方法[转载]
  3. 人生,是一种无法抗拒的前进
  4. Python 在子类中调用父类方法详解(单继承、多层继承、多重继承)
  5. matlab 数据降维和重构_核主成分分析(Kernel PCA, KPCA)的MATLAB 实现
  6. Codeforces Round #602 (Div. 2) D2. Optimal Subsequences stl 黑科技
  7. openstack开发_在OpenStack开发中有效使用指标
  8. vivo手机充电慢耗电快
  9. jdk下没有java源码_openJDK之如何下载各个版本的openJDK源码
  10. android async socket.io,底层网络协议库 – AndroidAsync
  11. mysql replicatedodb_MySQL存储引擎MyISAM与InnoDB的区别
  12. Android EditText 常用属性总结
  13. 小红帽系统进入oracle,11G RAC 安装在红帽6上,grid跑root.sh报错
  14. Docker安装加速器
  15. WPF高性能绘图之DrawingCanvas、DrawingVisual、Button的同时使用
  16. 解决联想小新笔记本电脑触摸板失灵
  17. 树莓派如何修改WIFI账户和密码
  18. 正则车牌号和新能源车牌
  19. 快递单打印专家 免费
  20. 自动驾驶轨迹预测论文阅读(一)Deep Learning-based Vehicle Behaviour Prediction For Autonomous Driving Applications

热门文章

  1. 那些好用的无版权免费图片网站
  2. 【建议收藏】数据结构和算法面试题
  3. 中望CAD机械版学习-1-基础操作
  4. Activiti7实战二:实现具有拒签功能的请假2层审批流程
  5. 交换机Access模式和Trunk模式配置演示
  6. 【数字IC基础】IC(Integrated Circuit,集成电路)常用缩写
  7. 论文阅读:《AliMe Assist: An Intelligent Assistant for Creating an Innovative E-commerce Experience》
  8. ffmpeg源代码处理流程分析_FFmpeg源代码简单分析:内存的分配和释放
  9. 圆角 border-radius
  10. 虚拟机soft lockup CPU死锁问题