我在 DB2/400 表中有一个 TIMESTAMP 类型的列。
我是这样过滤的:
select scmach,count(*) from f55br001 where sctrdj >='2013-08-30 00:00:00' group by scmach order by scmach
在一个简单的 ASP.NET 网页应用程序中,我像这样使用它:
var lastUpdate = db.QuerySingle("select max(sccrdj) as LASTUPDATE from PRODDTA.F55BR001 where SCTRDJ >= '" + dateParam + "'");
var maxDate = lastUpdate.LASTUPDATE;
接着:
<h3>
Last update: @maxDate
</h3>
在网页中,它被打印为:
2013-08-31-14.01.09.000000
我找不到任何方法将其转换为适当的日期时间字段。
GetType() 当它来自 db 时说它是一个字符串,而 DateTime.Parse 也不起作用
编辑:
我发现的唯一方法是使用 ParseExact。这是正确的方法吗?
string dateFormat = "yyyy-MM-dd-HH.mm.ss.FFFFFF";
var maxDate = DateTime.ParseExact(lastUpdate.LASTUPDATE,dateFormat, CultureInfo.InvariantCulture);