从不同的位置获取日期时间

时间:2015-04-14 12:27:25

标签: c# .net sql-server datetime sql-server-2012

我需要从不同地点来的时间。我的服务器位于美国,但我需要时间来自澳大利亚。

当我在数据库中保存记录时,我使用DateTime.Now()C#函数。有没有办法可以获得并节省澳大利亚时间,即使托管我的网站的服务器在美国?

如果有任何数据库解决方案,那也可以。我正在使用sql server

1 个答案:

答案 0 :(得分:4)

这就是您现在获取当地时间的方式:

DateTime yourLocalTime = DateTime.Now;

您可以使用UTC获取当前时间DateTime.UtcNow或将当地时间转换为UTC时间:

DateTime utcTime = DateTime.UtcNow;
DateTime utcTime = yourLocalTime.ToUniversalTime();

将此时间保存到数据库,而不是节省一些本地时间。如何从UTC时间获得当地时间:

DateTime yourLocalTime = utcTime.ToLocalTime();

如何在其他时区获得时间:

TimeZoneInfo timeZone = TimeZoneInfo.FindSystemTimeZoneById("Tokyo Standard Time");
DateTime tokyoLocalTime = TimeZoneInfo.ConvertTimeFromUtc(utcTime, timeZone);