Bene, dopo che Emanuele ha spiegato come e perchè una DataGridView può mostrare comportamenti estremamente leeeeeeeenti (alcuni MINUTI per caricare meno di 1000 righe), io vi svelo quale tecnologicissimo hack ho utilizzato per evitare rallentamenti strani durante la demo:
SELECT TOP(20) ... FROM Fatture
Semplice no? Per parafrasare una vecchia e famosa frase: "chi avrà mai bisogno di emettere più di venti fatture"? Scherzi a parte il problema si manifestava solo durante la visualizzazione della lista delle fattura (che nella demo erano 830). Siccome, come ogni buon speaker, la sessione l'ho preparata il giorno prima (si, molto in anticipo, lo so ) il "trucco" della TOP 20 si è reso necessario per evitare di avere tempi morti di diversi minuti durante la sessione. In questo modo il buon Emanuele ha poi potute lavorarci con tranquillità, e cosi abbiamo (ha) scoperto l'inghippo.
Ho appena inviato a Daniele il codice della demo aggiornato, in modo tale che sia messo in linea asap, per chi avesse già scaricato il codice può correggere a mano il problema seguendo i consigli presenti nel post di Emanuele e rimuovendo la clausola TOP(20) nel dataset DataSetFattureBrowse nel progetto FatturazioneDataLayer.
Buona Pasqua a tutti!