对 JTokenTypes 的双重/长期支持?

Ale*_* R. 3 c# json.net

有没有办法指定 aJToken的类型是 typedoublelong?我注意到通过https://github.com/JamesNK/Newtonsoft.Json/blob/master/Src/Newtonsoft.Json/Linq/JTokenType.cs只支持integers 和floats并且想知道人们如何处理更高精度的情况。

Jon*_*eet 5

JSON 不区分doublefloat。它甚至没有真正区分整数和非整数——它们只是数字。

JsonTokenType.Float并不是真的要表明System.Single- 它是“一个浮点数”。同样JsonTokenType.Integer也不是要表明System.Int32——它是“一个整数”。

有关此示例,请查看JValue

  • 接受的构造函数long将令牌类型设置为Integer
  • 接受的构造函数double将令牌类型设置为Float
  • 接受的构造函数decimal将令牌类型设置为Float