Click here to Skip to main content
15,893,722 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
SQL
I am creating a web chat application using asp.net vb. I have got the chat system to work as messages are sent and relayed back to the clients. But there was something i noticed but never thought it would be a problem. I am from England and the chat application is sitting on servers in America and noticed when the message displayed the time, the times were situated in American time zones. How would i go about setting the timezones that will correspond to there country timezones.

So if the message display 17:00 American time, then the message sent to England should display 12:00 English time.

All messages are stored in SQL Server Database. And in Table it take the server time.But sertime is India 
Posted

1 solution

You could start by using getutcdate() (or the C# equivalent DateTime.UtcNow) in your table rather than getdate()
Then you need a timezone table which stores offset (0:english time ), -6:New York, etc...) from UTC
User should have a timezoneId property they can select depending where they are
Then when displaying you calculate the UTCtime of your message + the offset and you're done
 
Share this answer
 
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900