Mar*_*ark 3 .net c# datetimeoffset dst
我有以下代码,它应该返回60的偏移量(显示目前在英国,我们在英国夏令时 - 即比格林威治标准时间早60分钟):
var info = TimeZoneInfo.FindSystemTimeZoneById("Greenwich Standard Time");
DateTimeOffset localServerTime = DateTimeOffset.Now;
double off = localServerTime.Offset.TotalMinutes;
return off;
Run Code Online (Sandbox Code Playgroud)
但是,它返回0.
有人可以帮我解决这个问题吗?
使用TimeZoneInfo.IsDaylightSavingTime方法(DateTimeOffset)查找当前是否为您的时区保存夏令时.
var info = TimeZoneInfo.FindSystemTimeZoneById("Greenwich Standard Time");
DateTimeOffset localServerTime = DateTimeOffset.Now;
bool isDaylightSaving = info.IsDaylightSavingTime(localServerTime);
Run Code Online (Sandbox Code Playgroud)
有进一步的例子在这里