ah scusami!

Allora semplice:
codice:
if(dr[i].GetType() == typeof(string)) //stringa...
else if(dr[i].GetType() == typeof(DateTime)) //data...
e cosi via dicendo

Ovvio, utilizza il metodo migliore per questa verifica, una switch andrebbe anche bene!

Spero sia questo ciò che vuoi sapere!