繁体   English   中英

使Newtonsoft JsonConvert默认为Int32而不是Int64

[英]Make Newtonsoft JsonConvert Default to Int32 Rather Than Int64

我通过这样做将Json转换为ExpandoObject

JsonConvert.DeserializeObject<ExpandoObject>(jsonText)

我得到的整数是Int64但我更喜欢Int32。

JsonConvert中是否有可用于更改默认行为的设置?

这篇帖子中引用James Newton King (Newtonsoft.JSON的制造商)的帖子:

默认情况下,Json.NET将整数值作为Int64读取,因为无法知道该值是Int32还是Int64,而Int64不太可能溢出。 对于类型化属性,反序列化器知道将Int64转换为Int32,但由于您的属性是无类型的,因此您将获得Int64。

之前已经问过这类问题。 基本上它归结为:您需要创建自定义转换器。 如果不是你的对象,那么对于整数。

有关该参考,请参阅答案由用户drzaus到底谁解决了这个问题,以及一个由恩兹 ,谁进入更多细节。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM