AsyncFileUpload e Unhandled Exception: The file attached is invalid

lunedì 13 giugno 2011 - 22.42
Tag Elenco Tags  VB.NET  |  .NET 4.0  |  Windows XP  |  Visual Studio Express  |  MySQL 5.1  |  Firefox

ravalon Profilo | Expert

Ciao ragazzi,
uso un AsyncFileUpload control con successo su un mio lavoro.....oggi mi capita di ottenere questo messaggio quando tento di caricare un file grafico ma solo sul terzo record di una tabella...sugli altri non ho problemi...anche se lo cancello, al momento che lo ricreo il terzo record mi da queso errore....se ne metto 4 di record, l'errore ce l'ho sempre e comunque sul terzo....

....la cosa non ha niente di razionale...

Da alcune ricerche in rete leggo che è un prolema di questo controllo Ajax qualora si stiano usando masterpage, come nel mio caso....ma non mi torna perchè allora dovrebbe darmi l'errore sempre e non solo in alcuni casi....

Uso .NET framework 4 e MySQL come DB....


Avete qualche idea ?

Gluck74 Profilo | Guru

Che vuol dire sul terzo record? non ho capito.
Ci fai vedere il codice incriminato?

Ciao

____________
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

ravalon Profilo | Expert

Il controllo lo uso per caricare dei record....appena aggiungo il terzo record ottengo l'errore....anche se ne inserisco 4-5-6 l'errore ce l'ho col terzo...ad ogni modo, ho l'errore in oggetto con questo controllo anche se me lo fa solo in casi rari e particolari e vorrei risolverlo...

Gluck74 Profilo | Guru

però così sarà difficile aiutarti, non abbiamo elementi.
magari elenca uno o due casi in cui hai avuto errore.
e il codice farebbe comodo

____________
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

ravalon Profilo | Expert

Ok ci provo a postare dei pezzi di codice esplicativi...

Ecco il codice ASPX che contiene l'oggetto, all'interno di un UpdatePanel (uso AJAX e AJAX control toolkit), il tutto impostato sotto .NET framework 4.0



Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Ed ecco qui il code behind per l'azione di caricamento....

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Il caricamento mi serve per mettere sul server delle foto che ovviamente saranno legate a dei records...

FAccio delle prove....carico il primo record...tutto ok....lo edito e cambio la foto un sacco di volte...tutto ok...
Inserisco il secondo e terzo record.....tutto ok per l'inserimento.... ma quando vado a editare il TERZO record (strano....ma me lo fa solo su questo) mi da l'errore in caricamento della foto....

Mi metto a pensare se quel record sia danneggiato (anche se non c'entra niente), cosi lo cancello e ne creo altri 2 per un totale di 4 record....oh....anche in questo caso il problema ce l'ho sul TERZO record e solo in fase di editing....

Al di là della stranezza della storia del terzo record, vorrei riuscire ad elimianare questo errore, anche se leggo in giro che il problema è legato al fatto che il codice sta dentro una MasterPage ....

Qualcuno scrive che la soluzione è semplicemente mettere la stringa

ClientIDMode="AutoID"

sul controllo AsyncFileUpload ma nel mio caso il problema non è sparito....

Altri scrivono di inserire la modalità compatibile per il framework 3.5 sul Web.Config ma non basta nemmeno questo...

Gluck74 Profilo | Guru

quindi il codice di caricamento non da errore.
Scusa ma faccio fatica a leggere perché è un secolo che non uso VB.

Non ho visto la riga dove associ la foto al record. Inoltre, mi daresti anche il pezzo di codice per la modifica?
Facendo debug, mi indichi la riga precisa che ti restituisce errore?

____________
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

ravalon Profilo | Expert

Non l'ho postata la procedura di inserimento nel db perchè nemmeno ci arriva....l'errore lo da proprio l'oggetto, tanto che se metto un punto di debug sulla procedura UploadFoto, che è quella che si incarica di fare tutto il lavoro, nemmeno mi ci passa quando da errore....a maggior ragione non c'entra nulla l'inserimento nel db che viene scatenata a posteriori del caricamento della immagine...

...ricapitolando, prima carico l'immagine (e qui ho l'errore) durante il caricamento come se quel dato file non fosse valido....solo dopo salverei i dati sul db ma non ci arrivo nemmeno a schiacciare il bottone di salvataggio...

E' un errore strano....non vorrei che non ci si possa fare niente dato che uso la masterpage...

Comunque intanto grazie per il tuo interessamento !

Gluck74 Profilo | Guru

quindi riesci a caricare i record, anche il terzo, ma non riesci più a modificarlo?
Ovvero tu cerchi di cambiare la foto al terzo record?
Puoi allegare un pacchetto con il codice?

____________
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

ravalon Profilo | Expert

Esattamente, in inserimento non c'è problema, in modifica ho problemi con il caricamento della foto (solo sul terzo record prima ancora che si entri nella routine di salvataggio su db o in qualsiasi altra) che mi da l'errore di cui in oggetto....

Per allegare il pacchetto ti dovrei mandare tutto il sito perchè è pieno di oggetti riutilizzati per fare il più possibile codice multifunzionale....
...però se mi dici esattamente cosa vuoi vedere in maniera specifica te lo inserisco cosi come ho fatto due post sopra....

..ripeto però che nessuna routine viene intaccata....mettendo il debug attivo è come se quello che fa l'oggetto AsyncFileUpload non si potesse seguire in occasione dell'errore....pare proprio una gestione interna dell'oggetto....

Ho anche aggiunto un quarto record...pensando...chissà come mai al terzo che è proprio l'ultimo.....ci sarà mica un collegamento ??? allora ne ho aggiunto un altro e il problema è sempre dentro il 3° e basta !

Non ricordo se l'avevo detto ma l'oggetto AsyncFileUpload sta dentro un RepeaterControl....

Gluck74 Profilo | Guru

la cosa è molto strana......

So che in passato, per la vecchia versione, questo oggetto ha avuto bugs. prova a fare qualche ricerca

____________
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

ravalon Profilo | Expert

Si infatti come scrivevo nei primi posts di questo topic pare sia un problema dell'oggetto in relazione alle MasterPage...ma che fanno non lo correggono ??? comunque se anche fosse cosi, non si spiega perchè mi funziona sempre tranne in quel fastidioso caso...che comunque è sempre presente anche in altre pagine....
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5