gpt4 book ai didi

c# - 在 C# 中将 UTC 日期时间转换为本地日期时间

转载 作者:行者123 更新时间:2023-12-04 11:56:03 24 4
gpt4 key购买 nike

我想显示将根据用户的时区管理的事件的日期和时间。要检查时区,我将系统时区更改为另一个时区,但我的代码仍在获取本地时区。
这是我的代码

我正在使用 Cassendra 数据库和 C# .NET MVC

DateTime startTimeFormate = x.Startdate;
DateTime endTimeFormate = x.Enddate;
TimeZone zone = TimeZone.CurrentTimeZone;
DateTime startTime = zone.ToLocalTime(startTimeFormate);
DateTime endTime = zone.ToLocalTime(endTimeFormate);

最佳答案

转换 UTC DateTime给您的 Local DateTime ,你必须使用 TimeZoneInfo如下:

DateTime startTimeFormate = x.Startdate; // This  is utc date time
TimeZoneInfo systemTimeZone = TimeZoneInfo.Local;
DateTime localDateTime = TimeZoneInfo.ConvertTimeFromUtc(startTimeFormate, systemTimeZone);

此外,如果您想转换 UTC DateTime特定于用户 Local DateTime然后执行以下操作:
string userTimeZoneId = "New Zealand Standard Time";
TimeZoneInfo nzTimeZone = TimeZoneInfo.FindSystemTimeZoneById(userTimeZoneId);
DateTime userLocalDateTime = TimeZoneInfo.ConvertTimeFromUtc(utcDateTime, userTimeZoneId);

注: TimeZone.NETobsolete现在,它已被弃用。而是使用 TimeZoneInfo .

关于c# - 在 C# 中将 UTC 日期时间转换为本地日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54397001/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com