我正在查询具有“开始”列的 oracle 数据库。
我的查询在此列中返回一个 10 位整数:
1369423190
1369423574
1369424520
我的问题是将这些值转换回 c# 中的日期时间
start = reader.GetInt64(17);
dt = new DateTime(start);
strStart = dt.ToString();
此代码当前为 strStart 返回以下值:
1/1/0001 12:02:16 AM
1/1/0001 12:02:16 AM
1/1/0001 12:02:16 AM
我在这里做错了什么?
*更新*
我更新了我的代码,但结果有点偏离:
var epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
l = (long)reader.GetInt64(17);
epoch = epoch.AddSeconds(l);
Start = epoch.ToString();
10/15/2056 2:46:04 PM
10/7/2273 7:46:20 PM
12/15/2403 12:21:01 PM