在我们的应用程序的源代码中,我们有以下行:
pcTimezone = System.TimeZoneInfo.Local.Id;
当我在办公室电脑上本地工作时(Windows 10英文,区域设置:英语(美国))一切正常,pcTimezone
设置为"Central European Standard Time"
,但当我从家里连接时通过RDP System.TimeZoneInfo.Local.Id
返回
“ŚrodkowoeuropejskiCzasstand”
这是波兰语。
这会导致错误
在本地电脑上找不到时区ID“ŚrodkowoeuropejskiCzasstand”
在TimeZoneInfo.FindSystemTimeZoneById(pcTimezone)
我尝试在家用电脑上尽我所能设置英语(系统语言不可更改,因此它仍然是波兰语),但它没有帮助。
有没有办法强制System.TimeZoneInfo.Local
的价值?
或者你可以设置RDP不要从外部计算机覆盖它?
答案 0 :(得分:1)
事实证明,出于某种奇怪的原因,通过RDP连接时,办公室PC的时区最早设置为:(UTC-12:00)International Date Line West
我要做的就是将此值设置为正确的值,问题就消失了。