JSON class 中缺少枚举器
Enumerator missing in JSON class
我正在尝试反序列化此 json。但是我有几个问题,特别是编译器告诉我:
the RootObject not contains a public definition for GetEnumerator.
这是用json2csharp生成的class:
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"
}
var obj = JsonConvert.DeserializeObject<RootObject>(responseText);
将 return 一个单独的 RootObject 而不是对象集合。
我认为问题出在您的 api 电话上。在这种情况下,您提出的请求是 return 一个单一的团队 (Eintracht Frankfurt)。
您想调用 return 团队列表。
我正在尝试反序列化此 json。但是我有几个问题,特别是编译器告诉我:
the RootObject not contains a public definition for GetEnumerator.
这是用json2csharp生成的class:
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"
}
var obj = JsonConvert.DeserializeObject<RootObject>(responseText);
将 return 一个单独的 RootObject 而不是对象集合。
我认为问题出在您的 api 电话上。在这种情况下,您提出的请求是 return 一个单一的团队 (Eintracht Frankfurt)。
您想调用 return 团队列表。