如何将DateTime.现在在美国转换为英国的当地时间



希望大家玩得开心。

我的应用程序正在美国的服务器上运行,它使用以下代码来选择日期和时间。

var pickUpTime = DateTime.Now.ToShortTimeString();

我想要的是,这个字符串应该花费英国时间,而不是美国时间。

你能分享一下你的经验吗?

谨致问候,阿卜杜拉

您可以使用此代码转换时间:

var now = DateTime.UtcNow;
var timeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById("GMT Standard Time");
var britishLocalTime = TimeZoneInfo.ConvertTime(now, timeZoneInfo);

此代码将计入夏令时。

如果您想使用另一个时区,可以使用TimeZoneInfo.GetSystemTimeZones()获取所有时区并选择您需要的时区。在我的系统中,它返回91个元素。

您可以将其转换为GMT,然后再转换为您想要的任何格式。

获取当前GMT时间

DateTime.UtcNow应该这样做MSDN

最新更新