2016-01-24 77 views
-1

我如何在两个badgeIndex中获得code的值:1 & 2?如何使用JSON.NET从JSON字符串获取值

"selectedBadges": 
[ 
    { 
    "badgeIndex":1, 
    "code":"CP005", 
    "name":"Chapter 2" 
    }, 
    { 
    "badgeIndex":2, 
    "code":"FR092", 
    "name":"" 
    } 
] 
+2

第一步是阅读文档... – pseudoDust

+0

下面是一个很好的开始:http://www.newtonsoft.com/json/help/html/ParsingLINQtoJSON.htm – pseudoDust

+0

谷歌反序列化json。 – Gnqz

回答

1

您可以使用this website从您的json生成c#类。

public class SelectedBadge 
{ 
    public int badgeIndex { get; set; } 
    public string code { get; set; } 
    public string name { get; set; } 
} 

public class RootObject 
{ 
    public List<SelectedBadge> selectedBadges { get; set; } 
} 

现在你可以使用: RootObject ro = JsonConvert.DeserializeObject<RootObject>(json);

然后你就可以得到每一个元素,例如: String s = ro.selectedBadges[0].code;

我希望这可以帮助你。

+0

非常感谢你的例子,现在如果我想显示名称,请我只是使用'ro.selectedBadges [0] .name'? – Remi

+0

@RemivanBuuren是的,selectedBadges [0]是列表的第一个元素,它是一个SelectedBadge类,具有3个属性badgeIndex,代码和名称。如果你可以获得(或设置)一个属性,你需要使用“。”运营商。 – ganchito55

+0

好吧,这很好!再次感谢。 – Remi