datacolumn datetime from UTC to Localtime

G

georgejetson

Hi,

VB.net 2005 CLR 2.0

I have a dataset with a datatable...there is one datetime field, and about
30 double fields.

The datetime field is in UTC Time, but my client application needs to see
this in localtime.

The datetime field is accurate to the millisecond...

The data source is a flatfile (not a db) [tabbed delimited], thus, I can't
easily use the functionality of a server to return the gernerated column I
need (utc to local time)

I'm using the ms text driver, and Schema.ini to get the data into my
datatable, and this works fine.

Is there a way to add a datacolumn to my datatable (type datetime) that uses
an expression and convert the utc time in the orig field to localtime in a
new field?

thanks,
george jetson

On the side, against sqlserver 2000 in ado.net, I can't seem to write a
query against a view to return some rows when the timestamp has millisecond
resolution (When I don't use this resolution, it works)

i.e.: SELECT myField from myTable where myTime = '3/6/2008 9:30:00' WORKS
i.e.: SELECT myField from myTable where myTime = '3/6/2008 9:30:00.723'
DOES NOT WORK
 
C

Cowboy \(Gregory A. Beamer\)

If you are storing in UTC, you can use .NET classes to convert to local
time, as long as you know the time you are converting to. NOTE that Central
Standard Time and Central Savings Time are considered two different beasts
by the .NET classes, so getting local time will require knowing when DST is
in effect. If you do not wish to code your own routine for this, you will
have to use the Windows DST piece, which requires Invoking lower level
functions.

To do this, look at the documentation of the TimeZoneInfo class:
http://msdn2.microsoft.com/en-us/library/system.timezoneinfo.aspx

Hope this helps!

--
Gregory A. Beamer
MVP, MCP: +I, SE, SD, DBA

*************************************************
| Think outside the box!
|
*************************************************
 
W

Wen Yuan Wang [MSFT]

Thanks for Cowboy's prompt reply.

Hello Georgejetson,

It seems you want to convert the datatime from UTC to Localtime by
DataColumn.express method, correct? If I misunderstood anything here,
please don't hesitate to correct me.

All functions which supported in DataColumn.Express are listed in the
following document.
http://msdn2.microsoft.com/en-us/library/system.data.datacolumn.expression.a
spx
[DataColumn..::.Expression Property]

But, I'm afraid they couldn't achieve what you need. No method listed in
above could convert UTC time to Localtime. Just as Cowboy said, you may
have to consider creating an UTC-LocalTime method and pass your datatable
into it. In this function, you check datatime in each row, convert them to
LocalTime and add it back into datatable again.

Hope this helps. Please feel free to let me know if you have more concern.
We are glad to assist you.
Have a great day,
Best regards,

Wen Yuan
Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
(e-mail address removed).

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top