Upload med Progress Bar
skrevet af Niels Brinch
Alle der har prøvet at lave upload af fil i ASP.NET har opdaget at det er umuligt at lave en Progress Bar. Problemet er, at man i sin kode først bliver spurgt om noget når filen er helt uploadet. Derfor kan man ikke sende signaler til brugeren undervejs om hvor meget af filen der er uploadet.
En Google-søgning i emnet, giver 2 forskellige typer resultater:
- Dyre komponenter
- Et tip om at man skal bruge et HttpModule.
Det er korrekt at man skal bruge et HttpModule. Sagen er den, at der er et HttpModule indbygget i .NET som ikke giver dig adgang til oplysninger om hvor meget af en fil der er blevet uploadet. Derfor skal der benyttes et andet HttpModule end det indbyggede. Et som giver adgang til disse oplysninger.
Svaret er ... Brettle's NeatUpload. Det er gratis, men send ham en donation hvis du bruger det. Det har han fortjent - det virker rigtig godt. Installationen foregår nogenlunde sådan:
1. Hent NeatUpload og læg filerne i en mappe i din web-applikation.
2. Indsæt dit og dat i Web.config.
3. Deklarer to NeatUpload-controls: InputFile og ProgressBar i din aspx. Tilgå førstnævnte i din CodeBehind for at få fat i filen.
Behøver det være sværere? Så let var det for mig da jeg udviklede UploadBAG. Man kan komme ud for lidt ekstra krumspring, afhængigt af hvad man er ved at lave. F.eks. hvis man skal uploade mere end én fil ad gangen. Men det hele er beskrevet i en udførlig manual.
0 kommentarer |
0 Kommentarer:
Send en kommentar
<< Tilbage