Il titolo è un po ' provocatorio, ma non potevo usare i termini che sono usciti dalla mia bocca ieri dopo che ho aggiornato la mia web application alla nuova versione di ATLAS, ossia Microsoft Ajax Framework Beta 1.
Premetto che di Atlas ho usato esclusivamente UpdatePanel e ProgressControl in quanto solo questi permettono ad un sito web di fare un salto di qualità notevole, in termini di usabilità ed anche performance(partial rendering = meno dati inviati)
CASO "UPDATE PANEL"
Nel mio caso specifico ho un repeater che visualizza categorie di un catalogo.Sul click della categoria avviene un postback da cui recupero l'id della categoria cliccata e rifaccio il databind del repeater caricando quindi le categorie figlie di quella cliccata.
L'update panel mi serve unicamente per poter gestire il partial rendering sulla navigazione delle categorie.
Quindi nessun codice da implementare, ma solamente il tag dell'UpdatePanel che "wrappa" il mio repeater.
Dopo aver installato la Beta 1, non funziona più la navigazione del catalogo.
Mettendomi a debug ho potuto constatare che sul primo click entro nell'evento ed ho correttamente il valore dell' id(per esempio CommandArgument = 3) e mi viene generato correttamente il livello figlio.
Sul secondo click fatto sul nuovo livello caricato, entro sempre nell'evento, ma il valore che mi viene passato nel CommandArgument è relativo al valore dell'elemento nella stessa posizione ma del livello padre(quindi mi arriva ancora 3).
Il postback sembra quindi funzionare ma in modo non corretto, in pratica sembra che generi l'evento utilizzando i valori memorizzati nel viewstate al primo databind del repeater non considerando che un postback "parziale" è stato invece fatto.
Non sono riuscito a trovare soluzioni!
CASO UPDATEPROGRESS
L'update progress messo in un template di un controllo custom che ho realizzato non viene più renderizzato:
....
Con la CTP funzionava, con la Beta 1 no.
Potrebbe essere un problema del mio controllo custom ? E' da verificare comunque il perchè con la CTP tutto era perfettamente funzionante.
VARIE ED EVENTUALI
Non mi piace il fatto che il "core" assembly di Ajax vada nella GAC e che per forza lo debba referenziare mantenendolo nella GAC.
Spesso e volentieri è pratico e comodo poter copiare semplicemente gli assembly nella bin dell'applicativo web.
CONCLUSIONE
Penso che per ora ritornerò alla CTP.