无法使用Json.NET解析json数组

时间:2014-05-12 12:47:32

标签: c# json.net

我无法解析

{
    "Group":[
        {
            "Rssfeed":[
                {
                    "id":"1",
                    "rname":"jamaica Gleaner",
                    "rurl":"http:\/\/jamaica-gleaner.com\/feed\/rss.xml"
                },
                {
                    "id":"2",
                    "rname":"Jamaica Observer News",
                    "rurl":"http:\/\/www.jamaicaobserver.com\/rss\/business\/"
                },
                {
                    "id":"3",
                    "rname":"Jamaica Observer Sports ",
                    "rurl":"http:\/\/www.jamaicaobserver.com\/rss\/sport\/"
                },
                {
                    "id":"4",
                    "rname":"Jamaica-Gleaner News Feed",
                    "rurl":"http:\/\/jamaica-gleaner.com\/feed\/news.xml"
                },
                {
                    "id":"5",
                    "rname":"Jamaica-Gleaner Sports",
                    "rurl":"http:\/\/jamaica-gleaner.com\/feed\/sports.xml"
                }
            ]
        }
    ]
}

我在尝试运行以下代码时不断获得nullreferenceexception

JObject jo = JObject.Parse(json);
JArray jar = (JArray)jo["Group"][0]["RssFeed"];
//loop this
foreach (JObject o in jar.Children<JObject>())
{
    foreach (JProperty p in o.Properties())
    {
        string name = p.Name;
        string value = p.Value.ToString();
        MessageBox.Show(name);
    }
}

如果我从JArray中删除[0]["RssFeed"]我没有带有RssFeed字符串的消息框,但我不确定为什么它不能用于完整代码,是否有更好的方法解决这个问题?我第一次使用json.net所以也许我已经看了一些细节。谢谢你的关注。

1 个答案:

答案 0 :(得分:2)

您可能存在区分大小写问题:您的JSON使用的Rssfeed代码使用的是RssFeed