In questi giorni sto scrivendo in .NET una libreria che, tra le altre cose, deve leggere le informazioni contenute in un file Excel. Per fare questo, sto utilizzando una OleDbConnection, per aprire il file come se fosse un database, e leggerlo così attraverso un OleDbDataReader. Fino adesso non avevo avuto problemi, ma oggi ho riscontrato uno strano comportamento: andando a leggere righe le cui colonne contengono valori di tipi diversi, il reader restituisce il valore DBNull. Girovagando su Internet, ho scoperto che una possibile soluzione consiste nell'aggiungere il parametro IMEX=1, in modo che tutti i valori del file Excel siano considerati come stringhe (cosa che, almeno per il mio caso, va benissimo).