使用NewtonSoft - 数组将JSON反序列化为.net对象

时间:2013-03-03 12:15:31

标签: c# asp.net arrays json json.net

{
  "albums": [
    {
      "name": "Muse",
      "permalink": "Muse",
      "cover_image_url": "http://image.kazaa.com/images/69/01672812 1569/Yaron_Herman_Trio/Muse/Yaron_Herman_Trio-Muse_1.jpg",
      "id": 93098,
      "artist_nam e": "Yaron Herman Trio"
    },

}

如何获取“相册”中包含的“名称”的值? 请帮忙!有没有具体的方法呢?通过api看了一眼,但试着抓住了价值!

2 个答案:

答案 0 :(得分:2)

将您的json反序列化为您的对象。

使用JsonConvert.DeserializeObject<objectType>(jsonString);

e.g; 你有一个班级

Public class Album
{
public string name {get;set;}
public string permalink {get;set;},
public string cover_image_url {get;set;}
public int id {get;set;}
public string artist_name{get;set}
}

另一个班级

public class Albums
{
List<Album> albums{get;set;}
}

然后使用

 var albums=JsonConvert.DeserializeObject<Albums>(jsonString);

现在专辑包含专辑对象列表,现在您可以从中获取任何值。

答案 1 :(得分:0)

确保您的集合变量已声明为public。 例如:

public class Albums
{
   public List<Album> albums{get;set;}
}