JSInterop.Json.Deserialize从DateTime对象丢失毫秒

问题描述 投票:2回答:2

在我的Blazor 0.9.0项目中,我有一个大的json字符串,用于包含DateTime属性(包括毫秒)的对象列表。这是通过Ajax传递给我的.cshtml文件,我在字符串上调用Microsoft.JSInterop.Json.Deserialize。除了DateTime对象丢失毫秒之外,这反序列化很好。对于JsonConvert,可以使用JsonSerializerSettings DateParseHandling来解决这个问题。我们如何在Blazor做到这一点?

var json = "{\"timestamp\":\"2019-03-01T12:22:26.102Z\"}";

我希望将其反序列化为01/03/2019 12:22:26:102但实际结果是01/03/2019 12:22:26

json blazor
2个回答
3
投票

Blazor使用SimpleJson,而不是NewtonSoft。这也影响Http.GetJsonAsync<T>

我已经把它打破了我的一些相当正常的Json从API返回(randomuser.me就是一个例子)。

我刚刚添加了NewtonSoft包,并使用HttpClient将结果下载为字符串。


0
投票

遗憾的是,解决方案必须创建Date字段的字符串表示形式,以便在反序列化后保持毫秒数。如果出于某种原因在Blazor中实现,NewtonSoft 12.01和JSInterop目前都不会保持毫秒数。

© www.soinside.com 2019 - 2024. All rights reserved.