【问题标题】:Windows Time Zone Identifiers not supported in .NET 6 Blazor WASM.NET 6 Blazor WASM 不支持 Windows 时区标识符
【发布时间】:2022-02-01 22:30:17
【问题描述】:

根据 https://devblogs.microsoft.com/dotnet/date-time-and-time-zone-enhancements-in-net-6/#time-zone-conversion-apis, 使用 .NET 6,我们应该能够同时使用 IANA 和 Windows 时区标识符格式。

但是,这在 Blazor WASM(客户端)中不起作用,其中似乎只能识别 IANA 格式。

有谁知道这是预期的行为、错误还是 WIP?

【问题讨论】:

  • 我不能 100% 确定,但我不相信从 ICU/CLDR 的 Windows 到 IANA 映射当前包含在 Blazor WASM 中,这是转换正常工作所必需的。您应该在github.com/dotnet/runtime 提出问题。此外,如果您确实需要在 Blazor 中执行此操作,可以使用 TimeZoneConverter
  • @MattJohnson-Pint 问题提出

标签: timezone blazor-webassembly .net-6.0


【解决方案1】:

正如本期 (GitHub issue) 所说,这是设计使然。在 Blazor 和 JavaScript 之间传递数据时,每个数据都会被序列化并传递,然后反序列化以在其他运行时(编组)中使用。 .Net DateTimeOffset 只能从 IANA 格式的 JSON 反序列化 ("2020-05-21T02:33:11.188+01:30") 中获取:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-25
    • 1970-01-01
    • 1970-01-01
    • 2020-04-23
    相关资源
    最近更新 更多