public char GetCharSafe(int columnIndex) { if (ReaderCache[columnIndex] is StringReaderCacheContainer) { return GetChar(columnIndex); } else { return Convert.ToChar(GetValue(columnIndex)); } }