DarLom
DarLom

Reputation: 1110

Getting DateTimeOffset value from SQL 2008 to C#

I have a SQL 2008 table with a field called RecDate of type DateTimeOffset.

For a given record the value is '2010-04-01 17:19:23.62 -05:00'

In C# I create a DataTable and fill it with the results of

SELECT RecDate FROM MyTable.  

I need to get the milliseconds, but if I do the following the milliseconds are always 0:

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

What is the proper way to get the value in the RecDate column into the DTO variable?

Upvotes: 6

Views: 6052

Answers (1)

Andomar
Andomar

Reputation: 238048

Perhaps the cast to ToString() removes the microsecond info.

According to MSDN, the SQL Server data type datetimeoffset matches C#'s DateTimeOffset. So it should be safe to cast a datetimeoffset column to DateTimeOffset.

For example:

DateTimeOffset dto = (DateTimeOffset) Rows[0][0];

Upvotes: 10

Related Questions