asp.net上传文件大小的文件?

时间:2012-02-21 23:17:59

标签: asp.net file-upload

对于这样的场景,是否有一些开源文件上传(应用程序)解决方案?我们有可能想要上传真正巨型文件的用户,实际上可能是几GB的文件大小,而且由于超时等原因,似乎常规文件上传文本框不会是一个不错的选择...... / p>

感谢您的任何建议......

1 个答案:

答案 0 :(得分:3)

Jon Galloway在这里有一篇好文章:Large file uploads in ASP.NET

他在文章中提到 NeatUpload (这是免费的,并在LGPL下发布,这是一个商业友好的开源许可证),以及指向codeplex页面的链接:http://neatupload.codeplex.com/ < / p>

  

项目说明

     

NeatUpload™ASP.NET组件允许开发人员进行流式传输   上传文件到存储(文件系统或数据库)并允许用户   监控上传进度。它是开源的,可以在Mono下工作   XSP / mod_mono以及Microsoft的ASP.NET实现。

     

它具有多个自定义控件,包括:

     
      
  • MultiFile允许所有用户选择要上传的多个文件   允许Flash 8+用户从单个文件中选择多个文件   选择对话框。
  •   
  • ProgressBar以内联或弹出方式显示上传进度。
  •   
  • UnloadConfirmer通过离开页面来防止用户意外中断上传。
  •   
     

功能

     
      
  • 在网络花园和网络农场工作。
  •   
  • 安装在GAC中时,在中等信任环境下工作。
  •   
  • 在Mono的XSP / mod_mono和Microsoft的ASP.NET 1.1或更高版本下工作。
  •   
  • 易于安装和使用。将UploadHttpModule添加到Web.config的部分   并使用Visual Studios Web窗体拖放控件   设计器。
  •   
  • ProgressBar控件可以显示处理进度   除上传进度外。
  •   
  • ProgressBar控件使用AJAX风格   当JavaScript可用时,现代浏览器上的无刷新更新,   但也允许没有JavaScript的用户查看上传进度。
  •   
  • 允许通过样式,自定义进度显示页面进行自定义,   UploadStorageProviders和UploadStateStoreProviders,并提供   用于创建自己的文件上载和进度控件的API。
  •   
  • 如果NeatUpload UploadHttpModule不存在,则回退到使用ASP.NET的HttpPostedFile。这样可以轻松删除   HttpModule如果由于某种原因导致问题。
  •   
  • Streams直接上传到存储。这节省了服务器内存,允许更大的上传,并有助于防止拒绝服务攻击。
  •   
  • 发生错误时删除上传的文件。这有助于防止磁盘空间泄漏。
  •   
  • 根据较小的通用公共许可证(LGPL)获得许可,这是一种商业友好的开源许可证。
  •