Ваши даты хранятся в формате эпохи Unix.
Вы, вероятно, просто хотите использовать:
private static readonly DateTime epoch = new DateTime(1970, 1, 1);
...
var myDate = epoch + TimeSpan.FromTicks(reader.GetInt64(nColDateTime));
<ч />
Например, когда я смотрю на ваш пример выше "1970/05/18", я могу предположить, что ваша дата примерно на 5 месяцев, на 18 дней раньше, чем сегодня.
Вот как я могу получить исходное значение:
(DateTime.Today - new DateTime(1970, 5, 18)).Ticks
Что возвращает:
13119840000000000
Включите это в мою формулу:
new DateTime(1970, 1, 1) + TimeSpan.FromTicks(13119840000000000)
Возвращает:
2011/07/30