DataContractJsonSerializer with TimeSpan在Xamarin.Android上是不同



我有一个现有的Windows Phone和Windows Store App,它们都与Web服务通信。所有 3 个都使用 DataContractJsonSerializer。

现在我正在将我的WP应用程序移植到Android,并在Android版本的DataContractJsonSerializer上遇到问题。

在Windows上,TimeSpan以ISO 8601格式序列化,例如"PT0S"。

在Android上,它被序列化为_ticks对象,例如{"_ticks":0}

更改现有应用程序和 Web 服务是不行的。

是否有任何其他兼容的 JSON 序列化程序可用于替换 Xamarin 中的 DataContractJsonSerializer?还有其他解决方法吗?

我相信

JSON.net 日期时间的默认格式是ISO 8601。

使用 JSON.Net 解析 ISO 持续时间

看起来ServiceStack显然是你的选择。

最新更新