472,353 Members | 1,854 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,353 software developers and data experts.

DateTime time zone conversions not required !

Would appreciate some insight into how people are dealing with the
implicit conversion of timezones that .NET does.

If a server in one timezone delivers up a typed dataset to a component
in another (winform for example) then the timezone conversion takes
place. This is a pain if you are doing date based calculations on the
client using input in one timezone and data from another. (Take one
hour off a CET time and you go a day back in terms of days...)

What are people doing to conteract this? What are some sample
strategies? Any sample code to simply STOP this would help, but I
suspect there are more far reaching implications...

Thanks
Nov 15 '05 #1
4 15169
GiriT,

.NET shouldn't be doing anything to the dates to change them when you
are returning (and I have heard of no such feature). Is it possible that
this is happening on the database level, or some other level which you are
not aware of?

To get around things like this, I make sure that all dates stored in the
database are in UTC, and I do modification on them locally if need be.

Hope this helps.
--
- Nicholas Paldino [.NET/C# MVP]
- nick(dot)paldino=at=exisconsulting<dot>com

"GiriT" <gt******@prologis.com> wrote in message
news:f1**************************@posting.google.c om...
Would appreciate some insight into how people are dealing with the
implicit conversion of timezones that .NET does.

If a server in one timezone delivers up a typed dataset to a component
in another (winform for example) then the timezone conversion takes
place. This is a pain if you are doing date based calculations on the
client using input in one timezone and data from another. (Take one
hour off a CET time and you go a day back in terms of days...)

What are people doing to conteract this? What are some sample
strategies? Any sample code to simply STOP this would help, but I
suspect there are more far reaching implications...

Thanks

Nov 15 '05 #2

Hi ,

The TimeZone converstion at lease take place when you serialize the
DateTime object.
You can just follow Nicholas' suggestion, convert the DateTime object into
UTC.
I think you also can convert your DateTime object into a string and after
received construct a new DateTime object.

Hope this helps,

Best regards,
Jeffrey Tan
Microsoft Online Partner Support
Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and confers no rights.

--------------------
| From: gt******@prologis.com (GiriT)
| Newsgroups: microsoft.public.dotnet.languages.csharp
| Subject: DateTime time zone conversions not required !
| Date: 10 Oct 2003 05:25:45 -0700
| Organization: http://groups.google.com
| Lines: 14
| Message-ID: <f1**************************@posting.google.com >
| NNTP-Posting-Host: 193.67.177.98
| Content-Type: text/plain; charset=ISO-8859-1
| Content-Transfer-Encoding: 8bit
| X-Trace: posting.google.com 1065788745 12856 127.0.0.1 (10 Oct 2003
12:25:45 GMT)
| X-Complaints-To: gr**********@google.com
| NNTP-Posting-Date: Fri, 10 Oct 2003 12:25:45 +0000 (UTC)
| Path:
cpmsftngxa06.phx.gbl!TK2MSFTNGP08.phx.gbl!newsfeed 00.sul.t-online.de!t-onlin
e.de!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!postnew s1.google.com!no
t-for-mail
| Xref: cpmsftngxa06.phx.gbl microsoft.public.dotnet.languages.csharp:190527
| X-Tomcat-NG: microsoft.public.dotnet.languages.csharp
|
| Would appreciate some insight into how people are dealing with the
| implicit conversion of timezones that .NET does.
|
| If a server in one timezone delivers up a typed dataset to a component
| in another (winform for example) then the timezone conversion takes
| place. This is a pain if you are doing date based calculations on the
| client using input in one timezone and data from another. (Take one
| hour off a CET time and you go a day back in terms of days...)
|
| What are people doing to conteract this? What are some sample
| strategies? Any sample code to simply STOP this would help, but I
| suspect there are more far reaching implications...
|
| Thanks
|

Nov 15 '05 #3
What is interesting is the following:

The database has a date as 10 Oct 1999 00:00 (ie midnight)

A webservice in CET (GMT+1) plucks this out of the database into a typed
dataset.

If you go direct to the webservice from a browser and use the VS.NET harness
you see the right date.

A component in a different timezone GMT receives this typed dataset. When
you then access the typed dataset's date field it has become.... 11 Oct
1999 22:00. Now this is strictly speaking correct as that is the time GMT
if you take daylight saving into account...

My problem is that all my dates are in as midnight... I don't care about
the "time" as such so converting to and from UTC is not realistic as the
dates when entered by the user into the system are specified as just dates
not daae and time in their timezone....

Luckily for me .Subtract returns a TimeSpan object, whose Days property is
returning the correct result (can you confirm this ?).

This doesn't resolve whether I should be :

a) Letting dates go in as midnight but then use .ToLocalTime() in the
timezone.
b) Engage in the complexity of dealing with time and convert to UTC on the
way in and ToLocal on the way out..
b) Any other strategy...

Be grateful for any advice on this.
Nov 15 '05 #4

Hi Giri,

I think a sample and easy to implement way of avoiding the timezone
conversion is convert the Datetime object to string, then in client side,
you can again convert the string into DateTime object.
If you want to do the timezone conversion, I think you should store the UTC
in server side and use tolocal method in client side.

Hope this helps,
Best regards,
Jeffrey Tan
Microsoft Online Partner Support
Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and confers no rights.

--------------------
| From: "Giri" <gt******@prologis.com>
| References: <f1**************************@posting.google.com >
<Xk**************@cpmsftngxa06.phx.gbl>
| Subject: Re: DateTime time zone conversions not required !
| Date: Tue, 21 Oct 2003 09:21:52 +0100
| Lines: 34
| X-Priority: 3
| X-MSMail-Priority: Normal
| X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
| Message-ID: <ua*************@TK2MSFTNGP10.phx.gbl>
| Newsgroups: microsoft.public.dotnet.languages.csharp
| NNTP-Posting-Host: 193.67.177.98
| Path: cpmsftngxa06.phx.gbl!TK2MSFTNGP08.phx.gbl!TK2MSFTN GP10.phx.gbl
| Xref: cpmsftngxa06.phx.gbl microsoft.public.dotnet.languages.csharp:192793
| X-Tomcat-NG: microsoft.public.dotnet.languages.csharp
|
| What is interesting is the following:
|
| The database has a date as 10 Oct 1999 00:00 (ie midnight)
|
| A webservice in CET (GMT+1) plucks this out of the database into a typed
| dataset.
|
| If you go direct to the webservice from a browser and use the VS.NET
harness
| you see the right date.
|
| A component in a different timezone GMT receives this typed dataset. When
| you then access the typed dataset's date field it has become.... 11 Oct
| 1999 22:00. Now this is strictly speaking correct as that is the time GMT
| if you take daylight saving into account...
|
| My problem is that all my dates are in as midnight... I don't care about
| the "time" as such so converting to and from UTC is not realistic as the
| dates when entered by the user into the system are specified as just dates
| not daae and time in their timezone....
|
| Luckily for me .Subtract returns a TimeSpan object, whose Days property is
| returning the correct result (can you confirm this ?).
|
| This doesn't resolve whether I should be :
|
| a) Letting dates go in as midnight but then use .ToLocalTime() in the
| timezone.
| b) Engage in the complexity of dealing with time and convert to UTC on the
| way in and ToLocal on the way out..
| b) Any other strategy...
|
| Be grateful for any advice on this.
|
|
|

Nov 15 '05 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
by: Max M | last post by:
# -*- coding: latin-1 -*- """ I am currently using the datetime package, but I find that the design is oddly asymmetric. I would like to know...
2
by: Daniel Jung | last post by:
Hi 1088553069 => Wed Jun 30 01:51:22 2004 CEST I can do the time INT string substitution, but I want a set of "country codes", in order for...
3
by: Mark | last post by:
Hey everybody. Is there an easy way in vb.net to convert the local time of a machine to US CST ? My machines are distributed throughout and the...
11
by: Cor Ligthert | last post by:
Hello everybody, Jay and Herfried are telling me every time when I use CDate that using the datetime.parseexact is always the best way to do...
9
by: Phil B | last post by:
I am having a problem with a datetime from a web services provider The provider is sending the following SOAP response <?xml version="1.0"...
12
by: conckrish | last post by:
Hi all.. Can anyone tell me how to compare datetime objects?I ve three objects namely Current date,start date and end date.. I need to check the...
9
by: Abhishek | last post by:
Hi I am trying to deserialize/ Parse a datetime object with the below string "2007-05-14T08:00:00.000+02:30" . If i am in GMT + 2.30 time zone...
2
by: nightwatch77 | last post by:
Hi, does anyone know why .Net incorrectly handles time zone conversion when passing DateTime through web services? The problem is that it seems to...
2
by: Andy B | last post by:
I have a few questions about xml, DateTime conversions and DateTime fields. 1. in the example of DateTime.Now, how would you save it in the format...
0
by: antdb | last post by:
Ⅰ. Advantage of AntDB: hyper-convergence + streaming processing engine In the overall architecture, a new "hyper-convergence" concept was...
0
by: Matthew3360 | last post by:
Hi there. I have been struggling to find out how to use a variable as my location in my header redirect function. Here is my code. ...
2
by: Matthew3360 | last post by:
Hi, I have a python app that i want to be able to get variables from a php page on my webserver. My python app is on my computer. How would I make it...
0
by: AndyPSV | last post by:
HOW CAN I CREATE AN AI with an .executable file that would suck all files in the folder and on my computerHOW CAN I CREATE AN AI with an .executable...
0
by: Arjunsri | last post by:
I have a Redshift database that I need to use as an import data source. I have configured the DSN connection using the server, port, database, and...
0
hi
by: WisdomUfot | last post by:
It's an interesting question you've got about how Gmail hides the HTTP referrer when a link in an email is clicked. While I don't have the specific...
0
Oralloy
by: Oralloy | last post by:
Hello Folks, I am trying to hook up a CPU which I designed using SystemC to I/O pins on an FPGA. My problem (spelled failure) is with the...
0
BLUEPANDA
by: BLUEPANDA | last post by:
At BluePanda Dev, we're passionate about building high-quality software and sharing our knowledge with the community. That's why we've created a SaaS...
0
by: Rahul1995seven | last post by:
Introduction: In the realm of programming languages, Python has emerged as a powerhouse. With its simplicity, versatility, and robustness, Python...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.