我想从JavaScript获取客户端时区ID来解析c#TimezoneInfo类。并转换为utc时间。我有这个vartimezone=String(newDate());returntimezone.substring(timezone.lastIndexOf('(')+1).replace(')','').trim();问题是javascripttimezone有时会返回CST。有没有正确的方法来获取时区ID来自c#TimeZoneInfoZoneInfo=TimeZoneInfo.FindSystemTimeZoneById(timeZoneIdFromJavascript);re
我们在ASP.NET中有一个应用程序,它以Windows格式(通过TimeZoneInfo.Id)存储所有用户时区数据。我们还使用moment.js和moment.jsTimeZone库在客户端将UTC数据转换为用户数据。这是一个复杂的AngularJs应用程序,需要在客户端进行时区转换。到目前为止,我们使用NodaTime.NET库将Windows时区ID转换为Moment.js时区ID。它适用于大多数常见时区。但我们需要使这种转换100%兼容。目前看来,没有可靠的方法可以将Windows时区ID映射到IANA时区数据。有很多差异。我相信现代JS应用程序经常处理时区。有时需要在服务器
我从JavaScript向Controller传递了用户客户端日期时间与UTC之间的偏移分钟数,使用Date对象上的getTimezoneOffset方法。现在我在服务器端有了这些信息,我想从中创建一个TimeZoneInfo。这怎么可能?如果这不可能,那么我如何使用分钟偏移量将服务器端的UTC日期转换为客户端的时区? 最佳答案 I'dliketocreateaTimeZoneInfofromit.Howisthispossible?这是不可能的。时区偏移量与时区不同。请阅读timezonetagwiki,尤其是标题为“TimeZo
我有一个C#.Net(4.0)应用程序,我想根据季节为它做一些逻辑。此应用程序将由北半球和南半球的人们使用,并且可能在也可能不在连接到Internet的机器上使用。另一个SO用户提出了类似的问题here,这让我可以根据机器的本地时区信息寻求解决方案。我的JavaScript到C#的“端口”大致如下所示:TimeZoneInfotzi=TimeZoneInfo.Local;TimeSpanjanuary=tzi.GetUtcOffset(newDateTime(System.DateTime.Now.Year,1,1));TimeSpanjuly=tzi.GetUtcOffset(new
我正在使用powershell命令测试我们的基础设施:[System.TimeZoneInfo]::Local.Id返回一个字符串EasternStandardTime我们的服务器现在都是英文的,但我很确定如果我在非英文窗口上运行这个测试会失败。有没有一种方法可以检查时区而不必对照英文字符串进行检查? 最佳答案 与其使用[System.TimeZoneInfo]::Local.Id,不如使用[System.Timezoneinfo]::Local.BaseUtcOffset,它会根据以下内容给出结果UTC时间与您正在使用的服务器的时
如何在C#中获取不同国家/地区的当前时间通过使用以下任何参数,1.国名2.国家时区这适用于Windows/WPF应用程序,与Web不同有人可以回答这个问题吗?提前致谢。 最佳答案 你应该看看TimeZoneInfo类,特别是TimeZoneInfo.ConvertTimemethod.例如,获取中欧当前时间:varremoteTimeZone=TimeZoneInfo.FindSystemTimeZoneById("CentralEuropeanStandardTime");varremoteTime=TimeZoneInfo.Co
我有一个处理来自网络服务的数据的MonoTouch应用程序。此数据包含特定于时区的日期信息。新西兰时区为UTC+12。我的应用程序根据当前时间显示此数据。这样做的问题是,当应用程序在不同的时区中使用时,数据无法正确显示,因为设备上的当前时间不正确。无论设备上的语言环境/时区设置如何,如何获取UTC+12的当前日期时间?编辑:我已经根据以下答案尝试了以下代码:TimeZoneInfo.ConvertTime(DateTime.Now,TimeZoneInfo.FindSystemTimeZoneById("Pacific/Auckland"));此代码在我的计算机上运行良好,但是当我在M
是否有针对中欧的通用TimeZoneInfo将CET和CEST合二为一?我有一个正在执行以下操作的应用:TimeZoneInfotzi=TimeZoneInfo.FindSystemTimeZoneById("CentralEuropeanStandardTime");DateTimeOffsetdto=newDateTimeOffset(someDate,tzi.BaseUtcOffset);varutcDate=dto.ToUniversalTime().DateTime;问题是这会返回错误的utcDate,因为BaseUtcOffset是+1而不是+2。似乎CET也有DST,并且
有没有简单的方法来创建仅包含美国时区的列表?我正在使用这段代码,但它会生成每个时区,我只想要太平洋、中部、山区和东部publicList_timeZones=TimeZoneInfo.GetSystemTimeZones().ToList(); 最佳答案 尝试从这里的消防水龙带中喝水毫无意义。只需明确要求您想要的:varzones=newList{TimeZoneInfo.FindSystemTimeZoneById("PacificStandardTime"),TimeZoneInfo.FindSystemTimeZoneById
我需要一个通用函数来将UTC时间转换为EDT。我在印度有一台服务器。其中的应用程序需要将EDT时间用于所有时间目的。我正在使用.NET3.5。我在其他论坛上找到的。DateTimeeastern=TimeZoneInfo.ConvertTimeBySystemTimeZoneId(DateTime.UtcNow,"EasternStandardTime");当我尝试使用“EastenDaylightTime”时出现错误。"ThetimezoneID'EasternDaylightTime'wasnotfoundonthelocalcomputer".请帮助解决此问题或任何其他解决方案。