2017-05-16 32 views
0

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

反序列化后有什么办法得到负整数吗?

JSON:

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

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

numberone = 0 and numbertwo = 0 
+0

你可以请张贴你的json和一个反序列化对象的原始输出吗? –

+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

+0

漂亮的接吻..... – Ironman