6

我有一个 SQL 2008 表,其中有一个名为 RecDate 的字段DateTimeOffset

对于给定的记录,值为 '2010-04-01 17:19:23.62 -05:00'

在 C# 中,我创建了一个 DataTable 并用以下结果填充它

SELECT RecDate FROM MyTable.  

我需要获取毫秒数,但如果我执行以下操作,毫秒数始终为 0:

DateTimeOffset dto = DateTimeOffset.Parse(dt.Rows[0][0].ToString());  

将 RecDate 列中的值放入 DTO 变量的正确方法是什么?

4

1 回答 1

10

也许演员会ToString()删除微秒信息。

根据MSDN,SQL Server 数据类型datetimeoffset与 C# 的DateTimeOffset. 因此,将datetimeoffset列投射到. 应该是安全的DateTimeOffset

例如:

DateTimeOffset dto = (DateTimeOffset) Rows[0][0];
于 2010-04-19T16:24:52.770 回答