Jon Galloway already had some interesting thoughts about uploading large files with ASP.NET. Unfortunately he didn’t really advise on one good solution.
So I decided (or had) to take a look myself. What I needed is an upload button with a progress bar that works on a Mac and on a PC with a reasonable recent browser.
And here are the results:
Convincing Solutions: (They normally worked on IE, but not necessarily on Mac)
KUpload
A bit a confusing product palette and pricing, but looks like it starts at $79 plus $19 for the progress bar. Or $499 with Source Code. Demo works fine. Web-Site looks a little unprofessional.
DEXTUpload .NET
Component seems to work fine, nice progress bar and decent pricing for $338. Homepage works a bit strange, but info is there. No success on Mac.
SlickUpload
Nice simple online Demo and webpage. Starts at $149. Progress Bar updates nicely with infos about uploaded kBytes and time remaining. Forum has posts and lots of views. Last update was on the 06/24/2007. Works on Mac Safari, FF and on Windows.
Dart File Upload for ASP.NET
Looks professional and the online Demo works fine. Nice progress bar with additional information. Skinning possibilities and a special File Dialog button, so you don’t see the “Browse” button. Starts at $249.
Progress Bar does not really move on Safari or FF on Mac.
Essential Objects Ajax Uploaded
Another nice component with a good online Demo. Pricing starts at $149. Multiple Postback options and different skinning possibilities. Works fine in all tested browsers.
Telerik RadUpload Promoetheus
Telerik is a big provider of ASP.NET components with a pretty good reputation as far as I know. Their Upload component seems to be one of the more powerful on this list. The individual control starts at $249 and the whole suit is $799.
Based on this info, I decided to give it a try. Unfortunately, it does not currently work in Integrated Mode with IIS 7. Neither does the Progress Bar work in Safari 3 on a Mac 10.5.1 (Leopard). Very disappointing.
Not so convincing Solutions: (Demo’s did not work on my Vista IE7)
UpFilesBE
Look more like a hobbyist component, also, no updates since a while, no forum, etc. On the other hand, it’s only $49.
Update: Original Link does not work anymore: http://www.datanyms.com, but got a comment with a new Link to expanData AND a new price, now its $999. I tested it again. Looks like the demo is still the old one. It works fine in IE, but still not in Safari.
AsyncFileUpload
The only one that even mentions Ajax Panel compatibility, other than that, not much there. No Progress Bar either. $69 is ok. Last update was on May 2007.
FileUp
For $499 from SoftArtisans. There is no Progress Bar, at least in the Online Demo. Rather weak online presentation, but seems to be one of the players in the Upload Component Area.
PowUpload
With $199 in the middle field if it comes to pricing. Demo works fine, but the Progress Bar clearly reloads after each update and runs in a Popup. There are better solutions out there.
ABCUpload .Net
One of the more expensive tools for $899. The Upload happens in Popup Window, which I don’t really like too much, also the price is pretty high and I’ve never heard from this company before.
Mediachase FileUploader.NET
Starts at $310 and goes up to $3625 for a Corporate License. Progress Bar is in a Popup, but did not work in my test.
csNetUpload
Only $50, but no online demo or forum available, so I didn’t test this any further.
UploadProgressTracker
Again only $50, but looks like there has been no update since 2006, not really a good candidate either. Demo works fine though.
JUpload, Active Upload, Upload Friendly need a Java Applet to work, which is not something we want to do. So I didn’t look at them any further.
Open Source
NeatUpload
Looks like a pretty cool Open Source Component. The Progress Bar is in an IFrame and seems to do its job, but the update steps are not very fine grained. Also supports Mono!
Unfortunately it also does not work with Integrated Mode in IIS7. Please help voting so that Microsoft fixes this issue.
Passed the test in all my browsers (Mac and PC). Forum is full and recent, support seems to be available.
SWFUpload
The only Flash based component in this test. Was my longtime favorite and still is to a certain degree. We used this for Supertext for a while now. Really like the architecture and the features, unfortunately we had many users for which it didn’t work. Would be my first choice for an Intranet solution or if you have a limited user base.
FileUploadAjax
Didn’t see much Ajax or even a Progress Bar on my quick test, but does have decent amount of online examples.
Forum has tons of posts and latest version is from the 7/27/2007.
SharpUpload
Looks like this is rather a helper component to handle uploaded files, than something like the other tool that come with progress bars. etc.
Multiple File Upload With Progress Bar Using Flash and ASP.NET
From the Codeproject Website. Got really good reviews, but didn’t get around to try it out yet.
Summary
HORRIBLE! More than half of the products don’t really work, most of them don’t do anything on a Mac. Not sure why this has to be such an issue. Is this only an IIS/ASP issue?
The only 3 Components that really worked in our quick tests were SlickUpload, Essential Objects and NeatUpload. We kinda liked SlickUpload, but decided to give NeatUpload a try. Will keep you posted about the results.
Would really love to hear what experiences that other people had?
44 Kommentare zu “File Upload with ASP.NET”
Great job, pal!
Uploading is a core function for many enterprises. First of all I hate the “Search”-Button IEX and Firefox display – Safari has solved that much better. There is no input field, just a button. I hope there will be a native html or asp solution for uploading, it seems there is not one component out there who solves the problem seamlessly.
You can apply some JS hacks to stylize the input field, for example:
http://shauninman.com/archive/2007/09/10/styling_file_inputs_with_css_and_the_dom
Re: NeatUpload
I like this component but I’ve found that it doesn’t really look so good on a form that otherwise uses ajax. The form and file input being on the main page requires that you do a full postback, which is exactly what I’d like to avoid. It’s almost as if they got it backwards – the file input should be in an iframe and the progress bar on the main page, instead of the other way around.
I’ve been using NeatUpload for quite a while. I was very happy with it, except that the way it works (with a HttpModule) interfered when we were using a regular file upload system/control/html-element.
Well, at least I think that was the issue. But we’re very satisfied with it.
Good point about the the iframe, maybe thats something that can be done. Worst case we have 2 nested iframes. I think the Essential Objects Component does something like that.
Thanks for the overview, Remy!
Dart’s File Upload seems to work fine in IE, FF, Safari on both Windows and Mac. Not sure why the progress wasn’t working for you. You may want to give it another go.
Dart works for me on Safari for Windows, but not on Mac. We are using Safari 3.0.4 with OS X 10.5.1
I wrote an upload control using Flex and ASP.Net. It is at http://www.codeproject.com/KB/aspnet/FlashUpload.aspx. It has a few issues but I believe it is mostly Flash related. I use it on three different websites and haven’t had any trouble (that I know of). I’m hoping with Silverlight 2.0, a better one can be made. I provide the source code for the flex and ASP.Net. Check it out and let me know how it stacks up.
I’m curious what happened for the many users that SWFUpload didn’t work with, could you elaborate? Did they have Flash installed? High enough version?
Hey Robert
http://demo.swfupload.org/Documentation/#knownissues
Shows some of the known issues that people have with SWFUpload.
I had a few users that have Flash 9 installed and they saw the control, where able to select the file, but the upload just didn’t start afterwards. I even got the debug output and everything looks fine, besides the fact that the upload itself didn’t happen.
Another user got an IE security warning, which is more of a browser setting I guess, but we need this tool on our frontpage and it kinda looks scary if people get a security warning.
Other than that, I really liked the tool. If it’s not on the frontpage and you have somewhat flexible users (Flickr for example just has a link below the flash tool to use the normal upload buttons) I can recommend it.
Darick, thanks for the link. I’m sure your tool works fine, besides the usual issues that flash seems to bring with it. I don’t think Silverlight will really be a solution until it’s on every desktop.
Thanks for the info Remy!
SwfUpload has a lot going for it but I guess ultimately it can’t be better than the Flash it depends on. I had some issues too, probably the same that you describe.
Looks like I’m gonna go with NeatUpload.
Yep, good luck! Neatupload seems to work fine for me so far, it’s not the sexiest in the bunch, but at least it works (with the exception of using Integrated Mode on IIS7).
Robert, I found a control that uses an iframe for the file input:
http://geekswithblogs.net/rashid/archive/2007/08/01/Create-An-Ajax-Style-File-Upload.aspx
There is not demo, so I’m not sure how well it would work and the progress bar is just a fake timer.
Another interesting tool from Yahoo:
The Yahoo! UI Library: Uploader
http://developer.yahoo.com/yui/uploader/
This works with flash too, so I assume it has the usual flash issues, but maybe not?
About UpFilesBE
I worked on this project for httpmodule part. It looks like good product with ajax-based progress bar.
Josh Coswell
I tried it out again, still does not work for me in Safari.
Sir Remy Blaettler
Can you please send me an email on my address?
I want to discuss some issues out of this Forum.
Thanks
Josh
A lot of people asked for a solution to dynamically add multiple file upload html elements:
http://the-stickman.com/web-development/javascript/upload-multiple-files-with-a-single-file-element/
This seems to be a neat solution from Stickman.
Thanx for good review of whats avalable.
Few more flash based uploaders I found. Experience anyone?
Element IT MultiPowUpload
http://www.element-it.com/MultiPowUpload.ASPX
Multiple file selection, ASP.NET, free.
TWG Flash Uploader
http://www.tinywebgallery.com/index_tfu.htm
MultiBitShift
http://multibitshift.com/page/features
http://ajaxuploader.com/
This control is Ajax Based with a progress bar. It works great.
Indeed this control works very well. I tried it in IE and Safari (both on Windows) without any issues. Also no unnecessary postbacks, looks like a smooth Ajax upload.
Just found another neat multi upload solution:
http://jacobslusser.com/2007/09/13/multi-upload/
One more Flash Upload:
http://digitarald.de/project/fancyupload/
I guess I will soon create an updated Post with all the links organized a little better, but until then I just post them here for reference.
Hello,
Here is many programmers that use upload components for ASP.NET.
We would like to know your opinion, some remarks, about our upload component EAUpload.
Here is links:
http://www.easyalgo.com/EAUpload.aspx
http://www.easyalgo.com/Examples/EAUpload/Default.aspx
Best regards,
Gregory
Looks nice on IE and FF, but as stated on their webpage it kinda fails on Safari.
Hello Remy,
May be you would be interested to look at this ajax file upload example:
http://www.easyalgo.com/Examples/EAUpload/AjaxFileUploadWithAjaxProgressBar.aspx
Safari, Google Chrome browsers also supported
Best regards,
Gregory
Remy, it’s been a while – I’m wondering is your favorite choice still here still NeatUpload?
Also regarding powupload, I believe their latest and greatest is confusingly “multiPowUpload” (http://www.element-it.com/DemoMultiPOW.aspx) This version does not seem to have the limitations you mention.
We’ve been using SWFUpload but are having problems with 1-2% of users. Being a public site I’m really looking around for the solution with the most possible compatibility.
Regards,
Lee
I have not looked at powupload recently.
We are still using NeatUpload and had absolutely no issues with it. We did not upgrade to 1.3 yet, but the new version does support IIS7 Integrated Pipeline Mode. So one of the biggest drawbacks that the old version had is gone.
Hello,
I represent a printer company that receives files from customers who have PCs and Macs and all browsers.
I worked with a dll of motobit, well never worry but it was in ASP, and only one file at a time.
Then I tested the component JavaZoom very well but only for FTP, and need java.
Then Ajaxuploader that works 40% of upload they have lots of worries.
I will have to find a component that really works on all platforms and all browsers so I will now test Essentials object.
Really informative blog
A +
We are still using NeatUpload, it does not need Java, ActiveX or Flash and so far we did not have any issues. Even for bigger uploads around 30MB. We have not tried bigger stuff yet.
Hello everyone,
May be you would be interested to look at another flash upload utility:
http://www.easyalgo.com/eaflashupload.aspx. It has three different user interfaces and many advanced features such as: send variables as form fields values, retrive browser cookie, assign description for each file, JavaScript API.
This is a great review of solutions. I found your page to be an excellent place to start looking for upload controls. Thank you!
Brent
This is a great review of solutions.
nice post but 2010 now,could you pls update your review anyway i’m trying with neatupload Version=1.3.3756.31371
Yeah, you are right. It’s on my to-do list, but just as a FYI. We just upgraded to the newest NeatUpload Version. Still working fine.
This is a great review of solutions. I found your page to be an excellent place to start looking for upload controls. Thank you!
Thanks for the info Remy!
Thancs for good review of whats avalable.
I like this component but I’ve found that it doesn’t really look so good on a form that otherwise uses ajax.
Which one doe you mean? You can configure Neat-Upload to your liking.
[…] Various FileUpload Controls […]
[…] Various FileUpload Controls […]
I like this component