JSON类中缺少枚举器

时间:2015-07-02 09:52:08

标签: c# json enumerator

我试图将此json反序列化。但是我有几个问题,特别是编译器告诉我:

  

RootObject不包含GetEnumerator的公共定义。

这是使用json2csharp生成的类:

 public class Self
    {
        public string href { get; set; }
    }

    public class Fixtures
    {
        public string href { get; set; }
    }

    public class Players
    {
        public string href { get; set; }
    }

    public class Links
    {
        public Self self { get; set; }
        public Fixtures fixtures { get; set; }
        public Players players { get; set; }
    }

    public class RootObject
    {
        public Links _links { get; set; }
        public string name { get; set; }
        public string code { get; set; }
        public string shortName { get; set; }
        public string squadMarketValue { get; set; }
        public string crestUrl { get; set; }
    }

这是我的代码:

var obj = JsonConvert.DeserializeObject<RootObject>(responseText);

            foreach (var item in obj)
            {
                item.name //... this is an example of the attribute that I want grab from the JSON for each team    
            }

我需要遍历所有团队并将其保存到数据库中。

这是JSON的结构,如果它可以提供任何帮助:

{
"_links":{
"self":{
"href":"http://api.football-data.org/alpha/teams/19"
},
"fixtures":{
"href":"http://api.football-data.org/alpha/teams/19/fixtures"
},
"players":{
"href":"http://api.football-data.org/alpha/teams/19/players"
}
},
"name":"Eintracht Frankfurt",
"code":"SGE",
"shortName":"Eintr. Frankfurt",
"squadMarketValue":"69,050,000 €",
"crestUrl":"http://upload.wikimedia.org/wikipedia/commons/0/04/Eintracht_Frankfurt_Logo.svg"
}

1 个答案:

答案 0 :(得分:1)

var obj = JsonConvert.DeserializeObject<RootObject>(responseText);

将返回一个RootObject而不是一个对象集合。

我认为问题在于你的api电话。在这种情况下,您正在提出返回单个团队(Eintracht Frankfurt)的请求。

您希望拨打电话,返回团队列表。