我一直在我的asp.net应用程序中使用DateTime.Now。但是,我认为这总是使用美国服务器的时间。我怎么能根据时区得到日期时间?例如,如果有人在台湾使用我的软件,我希望根据他们的时区显示日期而不是美国时区。
我知道我可以找到这样的当前时区:
TimeZone localZone = TimeZone.CurrentTimeZone;
但是,我需要一个DateTiem。有没有办法将其转换为DateTime?
修改
为了澄清,我想在我的网页上显示当前日期。但是,当我使用DateTime.Now时,它使用我的服务器的时区。我不会将这个日期存储在我的数据库中,所以我认为我不需要这个UTC日期。
答案 0 :(得分:-1)
这会将当地时间转换为特定时区:
var yourTime = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.Local, TimeZoneInfo.FindSystemTimeZoneById("your time zone ID"));