【发布时间】:2022-07-28 06:25:55
【问题描述】:
如何在 Blazor WASM .Net 6 中为 System.Text.Json 配置 NodaTime 序列化?在 WebApi 你会做
builder.Services.AddControllers().AddJsonOptions(settings => settings.JsonSerializerOptions.ConfigureForNodaTime(DateTimeZoneProviders.Tzdb));
但 Blazor WASM 中没有控制器。
这也不起作用:
builder.Services.Configure<JsonSerializerOptions>(options => options.ConfigureForNodaTime(DateTimeZoneProviders.Tzdb));
var options = new JsonSerializerOptions().ConfigureForNodaTime(DateTimeZoneProviders.Tzdb);
并且提供给HttpClient 也不起作用。
【问题讨论】:
-
这感觉它可能不是真正特定于 Noda Time - 我希望任何解释如何在 Blazor WASM 项目中为 System.Text.Json 执行配置的教程/问题然后适用于 Noda时间。
-
从我的许多小时的工作来看,不存在这样的配置。此外,使用
var options = new JsonSerializerOptions().ConfigureForNodaTime(DateTimeZoneProviders.Tzdb);并在每个HttpClient请求上提供这些选项也不起作用。它实际上导致整个对象没有正确反序列化并且没有抛出异常。 -
我也看到了这种情况并试图将其隔离
标签: serialization system.text.json nodatime