ASP.NET progress upload bar

martedì 30 ottobre 2007 - 11.44

Opeth Profilo | Newbie

Come da oggetto, vorrei implementare in un tool web un servizio che mi tenga traccia dell'avanzamento dell'upload tramite una progress bar.
A dire il vero, vorrei implementarla personalmente, senza far ricorso ai tanti prodotti shareware presenti in rete, ma avrei bisogno di un piccolo aiuto almeno concettuale.
Chi può indirizzarmi sulla strada giusta, magari dandomi qualche dritta?
Grazie in anticipo.
Enzo

P.S. Il codice dovrebbe essere in vb.

pozzoli.samuele Profilo | Senior Member

>Come da oggetto, vorrei implementare in un tool web un servizio
>che mi tenga traccia dell'avanzamento dell'upload tramite una
>progress bar.
>A dire il vero, vorrei implementarla personalmente, senza far
>ricorso ai tanti prodotti shareware presenti in rete, ma avrei
>bisogno di un piccolo aiuto almeno concettuale.
>Chi può indirizzarmi sulla strada giusta, magari dandomi qualche
>dritta?
>Grazie in anticipo.
>Enzo
>
>P.S. Il codice dovrebbe essere in vb.

Molto difficile!

Tu hai una richiesta fatta da un client, su una pagina client... Ed è quindi il client soltanto, che sa a che punto del file è arrivato!

Quindi è molto facile che il tuo codice sarà javascript! Non vb!

Il vb, per intenderci, non potrebbe sapere quant'ìè lungo il file, per aggiornare la posizione della barra. E tantomeno non può aspettare di essere arrivato in fondo per sapere quant'è lungo! Sarebbe inutile.

Si potrebbe pensare di fare qualcosa in ajax... Ma comunque è molto complicato. Ti consiglio di crecare una soluzione javascript al problema, cambiando il punto di vista...

Opeth Profilo | Newbie

Non posso sfruttare le proprietà FileBytes e ContentLenght del FileUpload di .net per recuperare i bytes caricati e i bytes totali del file?

pozzoli.samuele Profilo | Senior Member

Può essere, ma comunque hai il problema di aggiornare la barra, che ti sta su una pagina client, che sta eseguendo un post, quindi non una serie di post...

Non hai quindi modo di eseguire una funzione sul server e rispedrla al client... Tantomeno mentre questo sta eseguendo già un invio di dati al server... Mi sa che nemmeno atlas ti può dare una mano, in questo...

Poi può sempre esistere un trucco che non conosco! Se lo scopri, informami!

Opeth Profilo | Newbie

Effettivamente neanche AJAX può fare al caso mio. A questo punto credo che l'unica soluzione sia javascript.

muccio04 Profilo | Newbie

ciao
anche io ho lo stesso problema, di caricare file grossi su un server, se sei riuscito a capire come si fa, mi potresti dare una mano?
grazie mille in anticipo,
Simone Muccioli

Opeth Profilo | Newbie

Purtroppo, dato che, in quel periodo, non avevo tempo, ovviai con un'altra soluzione, che cmq non sopperiva affatto a ciò che avevo realmente intenzione di fare.
Ad ogni modo, per fare una cosa del genere, potresti integrare uno script js nella pagina e implementare un web service ad hoc.
Non ho ancora provato a fare una cosa del genere, xkè ora come ora non ho tempo, ma secondo me potrebbe essere la soluzione migliore.
Infine, se proprio non vuoi seguire la strada che ti ho indicato, se cerchi online, ci sono una miriade di upload progress in flash, integrabili nelle nostre pagine aspx.
Saluti
E.

muccio04 Profilo | Newbie

adesso che ci penso nei browser ci dovrebbe essere tag che indica il tempo di refresh della pagina....si potrebbe fare un iframe dentro a una pagina che si refresha ogni x secondi, e tramite del javascript o non so che cosa(sempre dentro al frame) richiede la dimensione del file attualmente caricata....bho che ne dici, è fattibile?

Opeth Profilo | Newbie

Probabilmente, la tua soluzione è fattibile, ma per una questione di maggiore efficienza, pulizia del codice e leggibilità, ti consiglio il web service con javascript.
Cmq, appena ho tempo, mi ci metto e ti faccio sapere, perchè è una cosa che interessa anche me.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5