使用json.net(XAMARIN)逐个反序列化JSON对象

时间:2018-06-11 06:26:12

标签: c# json xamarin json.net visual-studio-2017

我是新手。我在VS2017中使用Xamarin。

我有一个JSON文件如下

[ {  
  "LEDGERID":1,
  "LEDGERNAME":"CASH",
  "UNDER":"19",
  "CREDIT_PERIOD":"0",
  "CREDIT_LIMIT":"0",
  "LEDGER_TYPE":"DEBIT",
  "OPENBAL":120196.00,
  "STATUS":"True",
  "USER_GEN":false,
  "date":null,
  "arabic_name":null},
  {
  "LEDGERID":2,
  "LEDGERNAME":"PURCHASE",
  "UNDER":"17",
  "CREDIT_PERIOD":"0",
  "CREDIT_LIMIT":"0",
  "LEDGER_TYPE":"DEBIT",
  "OPENBAL":0.00,
  "STATUS":"True",
  "USER_GEN":false,
  "date":null,
  "arabic_name":null
  }
  ]

这是一个较长的,但我简短易懂。我需要逐个接受它,因为有时我需要在将值带到列表之前给出测试用例。我在XAMARIN中使用PCL存储来存储Json文件。我去了NewtonSoft Json反序列化的文件。我希望有人可以提前帮助我

1 个答案:

答案 0 :(得分:2)

  1. 你的json无效,你有nul这个词,但我确定这是一个错误

  2. 将你的json带到http://json2csharp.com/并从中创建一个类并随便调用它

  3. 让自己获得Json.net Nuget包

  4. 示例课程

    public class RootObject
    {
        public int LEDGERID { get; set; }
        public string LEDGERNAME { get; set; }
        public string UNDER { get; set; }
        public string CREDIT_PERIOD { get; set; }
        public string CREDIT_LIMIT { get; set; }
        public string LEDGER_TYPE { get; set; }
        public double OPENBAL { get; set; }
        public string STATUS { get; set; }
        public bool USER_GEN { get; set; }
        public object date { get; set; }
        public object arabic_name { get; set; }
    }
    

    <强>用法

    var results = JsonConvert.DeserializeObject<List<RootObject>>(json);