负整数的JsonConvert.DeserializeObject是零Android

时间:2017-05-16 13:43:53

标签: android json deserialization json-deserialization

我正在使用JsonConvert.DeserializeObject将Json反序列化为一个对象。在Json中有"PageNumber": -1但是,在反序列化之后我总是得到PageNumber = 0。我注意到所有负值都将转换为零。

反序列化后有没有办法得到负整数?

杰森:

{
  "Pages": [
    {
      "A": [
        {
          "B": [
            {
              "numberone": -1,
              "numbertwo": -1          
            },
            {
              "numberone": -1,
              "numbertwo": -1 
            }
          ]
        }
      ]
    }
  ]
}

反序列化后,我检查了list<B>

numberone = 0 and numbertwo = 0

1 个答案:

答案 0 :(得分:1)

如果有人遇到同样的问题,我会这样解决:

            var handleNegativeValues = new JsonSerializerSettings
            {
                FloatParseHandling = FloatParseHandling.Decimal
            };

            //Deserialize from json to class object
            MyClass myObject= JsonConvert.DeserializeObject<MyCLass>(await _mHttpResponseMessage.Content.ReadAsStringAsync(), handleNegativeValues);

这是在C#Xamarin