Chris
Chris

Reputation: 1539

asp.net uploading files over a Gig in file size?

Is there some open source file upload (application) solution for a scenario like this? We have users who might want to upload really giant files, could be several GB's in file size in fact, and it seems like a regular file upload textbox isn't going to be a good choice here due to timeouts, etc...

Thanks for any advice...

Upvotes: 1

Views: 905

Answers (1)

zeroef
zeroef

Reputation: 1969

Jon Galloway has a good article here: Large file uploads in ASP.NET

He mentions NeatUpload (which is free, and posted under the LGPL, a business-friendly open source license) in the article, and the link to the codeplex page: http://neatupload.codeplex.com/

Project Description

The NeatUpload ™ ASP.NET component allows developers to stream uploaded files to storage (filesystem or database) and allows users to monitor upload progress. It is open source and works under Mono's XSP/mod_mono as well as Microsoft's ASP.NET implementation.

It features several custom controls, including:

  • MultiFile allows all users to select multiple files to upload and allows Flash 8+ users to select multiple files from a single file selection dialog.
  • ProgressBar displays the upload progress either inline or in a popup.
  • UnloadConfirmer prevents users from accidentally interrupting an upload by leaving the page.

Features

  • Works in web gardens and web farms.
  • Works under medium trust environments when installed in the GAC.
  • Works under Mono's XSP/mod_mono and Microsoft's ASP.NET 1.1 or higher.
  • Easy to install and use. Add the UploadHttpModule to the section of your Web.config and drag-and-drop the controls using the Visual Studios Web Forms Designer.
  • ProgressBar control can display processing progress in addition to upload progress.
  • ProgressBar control uses AJAX-style refreshless updates on modern browsers when JavaScript is available, but also allows users without JavaScript to see upload progress.
  • Allows customization through styles, custom progress display pages, UploadStorageProviders, and UploadStateStoreProviders, and provides an API for creating your own file upload and progress controls.
  • Falls back to using ASP.NET's HttpPostedFile if the NeatUpload UploadHttpModule is not present. This makes it easy to remove the HttpModule if for some reason it causes problems.
  • Streams uploads directly to storage. This conserves server memory, allows larger uploads, and helps prevent Denial of Service attacks.
  • Removes uploaded files when an error occurs. This helps prevent disk space leakage.
  • Licensed under the Lesser General Public License (LGPL), a business-friendly open source license.

Upvotes: 3

Related Questions