获取本地TimeZoneInfo

Nat*_*Pet 19 c#

我正在使用c#.我需要获取运行Web应用程序的人员的本地时区信息.

我想知道是否

   TimeZoneInfo tzinfo = TimeZoneInfo.Local;

   TimeZoneInfo.ConvertTimeFromUtc(result.DueDate.Value, tzinfo);
Run Code Online (Sandbox Code Playgroud)

是什么用.再次取决于运行应用程序的人所在的时区,我希望得到反映.

Ehs*_*san 28

是的,你是对的,这是你应该使用的.替代方案可以

TimeZone localZone = TimeZone.CurrentTimeZone;
Run Code Online (Sandbox Code Playgroud)

但该CurrentTimeZone物业对应TimeZoneInfo.Local物业,所以没有真正的区别.

它显示本地时区的标准时间和夏令时的名称.

  • @NatePet您需要取消标记为答案.你问这是否会给你一个网络客户的时区,这个答案说"是",这是不正确的.此代码为您提供Web服务器的时区. (10认同)
  • 您可能希望澄清这将返回托管该进程的计算机的本地时区,而不一定是"运行Web应用程序的人". (5认同)
  • 没有javascript就无法实现,请参阅http://www.c-sharpcorner.com/uploadfile/vendettamit/setting-your-website-datetime-according-to-time-zone-offset-of-the-client/ (2认同)
  • 是的,为什么答案标记为正确答案?它给了服务器机器时区。 (2认同)