i just downloaded NeatUpload and started the demo.aspx, i just modified 1 line, so i can save the choosed file to HD like it is written in ur step by step documentaion...but somehow it doesnt work... the progress bar shows that its finished but the file is nowhere to find...
It should be in the same directory as Demo.aspx. If not, I need a little more info:
1. Is any sort of exception/error being displayed? 2. Is the server running on Windows, Linux, or something else? 3. What browser did you use to do the upload? 4. What does the Demo.aspx page display for the "Name:" of the uploaded file after it has finished uploading?
For testing purposes, try replacing: inputFileId.TmpFile.MoveTo(Path.Combine(Request.PhysicalApplicationPath, Path.GetFileName(inputFileId.FileName)));
After the upload, a file named "test" should then appear in the same directory as Demo.aspx. Note: you'll need to delete it before each subsequent upload because MoveTo() will throw an exception if it already exists.
well unfortunately no error msg, it is a Windows XP Prof. PC with IIS running successful, i tried IE and Mozilla,
the right name of sourcepath file is displayed... i tried it again with ur suggestion but no success...
i just downloaded the zip(newest version), just put the whole folder in my wwwroot folder, gave it access rights etc and started the demo.aspx via browser... before i modified the line in code, thats all...
other aspx pages im using working np... i feel kinda stupid, but theres nothing i can imagine what ive done wrong here :(
im using the exact same code in demo.asmx and the code behind file demo.asmx.cs both are in the standard folder "NeatUpload-1.0.8".
thx again for help, unfortunately im kinda busy and i just tested it with "CopyTo" which didnt work and the browser displayed the Hello World! + Filename... i will do more tests the next days when im back home... but this is really bizarre...
But this procedure like i did should usually work ? i mean, i used the folder from the zip and copied it direct into my wwwroot ... and i just changed the demo.aspx coz the rest is ok i thought...
But this procedure like i did should usually work ?
I thought so and no one has reported the problem you are experiencing before. However, I'm not in a position to try to repro the problem personally because I don't have a Windows server to test with. I do all my development/testing under Mono/Linux.
BTW, in case it wasn't clear, if you made the change to use:
Yep. That's almost definitely the problem. If you don't have the ability to recompile NeatUpload, you can still use it. You just won't be able to modify the Demo directly. Instead, try doing what I describe in this other thread:
You need to copy both dlls to the bin folder. I'm not sure whether you need to add them as references if you are dynamically compiling your pages like you appear to be. You definitely need to add them as references if you are pre-compiling the codebehind like I do.
You do need to edit the web.config as described in the manual (ie increase httpRuntime maxRequestLength attribute and add the UploadHttpModule).
What errors are you seeing? Is the progress bar getting displayed? Does it say the upload completed but you can't find the file?
One thing that isn't mentioned in the manual is that you need to add methods like the following in order for Page_PreRender() to get called:
I have noticed 1 other important thing, as i mentioned before, i tested it over Lan to upload a 500 MB file from 1 pc to another and i opened the demo2.aspx over my second PC (Client PC) and it took me like 80-90 mins to transfer it.
Well it worked, but i personally coming from the PHP Corner for Web Development and with a simple php input field page for uploads (no tools etc) and apache server instead of IIS, i can upload the same big file within 5 mins.
Umm, is that normal that Uploading Files with ASP is so slow ? Thats kinda strange and maybe a problem if i want to use the upload functionality over intranet and over web... :( Does it take so mich time coz of the buffering process ?
The performance difference could be an IIS/Apache difference or a PHP/ASP difference or a with/without NeatUpload difference. To see if the difference is due to NeatUpload, compare how it takes to upload a smaller file with/without the UploadHttpModule commented out of the Web.config. Use a smaller file because with the UploadHttpModule commented out, the entire file will be stored in server memory until it has finished uploading.
Also FYI, you won't get a progress bar when the UploadHttpModule is commented out. That is expected behavior.
I tested what u have mentioned and the download with PHP and ASP with a small file (like 5 mb) is similar, so not much difference.
Did you test with or without the UploadHttpModule? What is the difference between with and without?
i think asp would also do the "big" upload as fast as PHP if it wouldnt load the file completely in the IIS memory, which unfortunately causing to a memory leak...
If you are running ASP with the UploadHttpModule, it shouldn't be loading the file into memory so that shouldn't be a bottleneck. If you are seeing memory leak when you are using UploadHttpModule, that's a bug.
but maybe im wrong... :)
1. u personally ever tested upload big files over web with neatupload ?
I think I did test uploading large files to the XSP webserver running on the local machine, and didn't see a significant difference between with and without UploadHttpModule. However, I have seen that Apache+mod_mono is much slower than using XSP (with or without UploadHttpModule), but there isn't much I can do about that. I don't have access to an IIS server to test against.
2. does neatupload always using the maximum internet upload speed ?
It does not intentionaly throttle bandwidth if that's what you mean. There could be a bug that causes it to underperform, or some other component could be throttling bandwidth. I'm various interested in the former, and although I can't do much about the latter, I'd like to know about it so that I can let other NeatUpload user know about it.
3. Is it possible to to set the "buffersize" which is used by neatupload to speed up the transfer ? or is it not possible/recommended ?
It is currently hardcoded (via the variable named bufferSize in FilteringWorkerRequest.cs) but there shouldn't be any problem with increasing to value higher than it's current value of 4096. Of course, I wouldn't recommend going above a few MB unless you have lots of memory on your server . Feel free to experiment though, and let me know if you find a better value. I haven't experimented with it at all. Note: If you change bufferSize, you will need to rebuild Brettle.Web.NeatUpload.dll from source.
thx again for your awesome help/support in this case !
a) after some tests i have found out that the bad transfer time for the big file was ONLY coz of Internet Explorer...
so i tried other browsers like Mozilla and it uploaded the 500 MB within 1,5 mins, which is very nice... so something must be wrong with the standard settings of IE or any other compatibility problem, maybe he is handling the httpmodule in a different way as Mozilla...
b) i tried to do some testing with the buffersize in the FilteringWorkerRequest.cs as u mentioned before and unfortunately there is some error after i compiled the project, he didnt show me any error but the <style ...> for the progress bar doesnt seem to compile correct. So i couldnt really test it...
If i copy the 2 dlls in a existing ASP Project it is working np =)
i think Visual Studio got a problem to compile the progress.aspx.cs class or something...
coz he is red underlining "<style...>" in the demo.aspx for example, so i think it has a problem to find the stylesheet, the current Schema doesnt support "style" is the error message when i try to compile the whole project.
Hope u know the answer, so i can compile the whole project to test some new values. :)