c#JSON解析

问题描述 投票:0回答:3

我在C#中解析JSON时遇到了麻烦。我想解析这个Json格式。

{
"data": 
  [
    {
        "id": 3,
        "code": "‎0000004", 
    }
  ]  
}

这是我在C#中的代码。

 public Data data { get; set; } 

 public class Data
 {
     public string id { get; set; }
     public string code { get; set; }
 }
c# json
3个回答
0
投票

显示的JSON是一个对象,具有(作为data)具有idcode的元素数组,因此:

public class SomeRoot {
   public List<Data> data {get;} = new List<Data>();
}

和反序列化SomeRoot你应该没事:

var root = JsonConvert.DeserializeObject<SomeRoot>(json);
var obj = root.data[0];
Console.WriteLine(obj.id);
Console.WriteLine(obj.code);

0
投票

你缺少一个必不可少的部分,即外部对象。此外,数据是一个数组:

public class RootObject
{
    public Data[] data { get; set; } 
}

RootObject r = JsonConvert.DeserializeObject<RootObject>(json);

下次,按照Easiest way to parse JSON response中列出的步骤操作。它将帮助您生成正确的类。


0
投票

它应该是 :

public class Data
{
    public int id { get; set; }
    public string code { get; set; }
}

public class RootObject
{
    public List<Data> data { get; set; }
}
© www.soinside.com 2019 - 2024. All rights reserved.