Scusate se riprongo questo post, ma ancora non sono riuscito ad eliminare il problema.
In questi giorni mi sto accingendo a rivisitare tutto il codice

per aggiungere, dove mancano, i blocchi Try catch.
Quando chiamo i metodi Delete, update e fill di un dataadapter le connessioni vengono chiuse dai metodi o devo chiuderle a mano anche lì?
Poco fa ho trovato un articolo di Riccardo Golia scritto nel 2004: http://blogs.aspitalia.com/rickyvr/post694/DataAdapter-Connessioni.aspx
Riporto la parte che mi ha fatto pensare che forse il Poller non elimini la connessione rimasta aperta. E' una possibilità? e come è possibile resettare il poller "a mano"? o non è il mio caso?
-------------
...pool di connessioni. Un oggetto Connection viene rimosso dal pool se è scaduto il suo ciclo di vita oppure se si viene a verificare una anomalia. In ogni caso il pooler ispeziona periodicamente i vari pool e rimuove qullo che c'è da rimuovere (ovvero le connessioni scadute o non valide).
Nel caso di connessioni OLEDB è il componente OLEDB service a gestire il pooling. Il lancio del metodo Close o Dispose per una connessione OLEDB esegue il metodo Marshal.ReleaseComObject: questo sta a testimoniare il legame tra l'ambiente managed di ADO.NET e l'ambiente unamanaged sottostante.
Modificato da ciscos il 09 ottobre 2008 22.19 -