Парсинг JSON на C# и запись в коллекцию
Мне нужно обработать json и записать значения в коллекцию, делала по примеру из вопроса, но у меня возникает ошибка. Библиотека: Newtonsoft.
Пример JSON:
{
"0": {
"id": 0,
"rus": "Россия",
"eng": "Russia",
"chn": "俄罗斯",
"visible": 1,
"retry": 1,
"rent": 1,
"multiService": 1
},
"1": {
"id": 1,
"rus": "Украина",
"eng": "Ukraine",
"chn": "乌克兰",
"visible": 1,
"retry": 1,
"rent": 1,
"multiService": 1
},
}
Классы на C#:
class CountryJson
{
[JsonProperty("Country")]
public Dictionary<string, CountryItem> Country { get; set; }
}
class CountryItem
{
[JsonProperty("id")]
public int ID { get; set; }
[JsonProperty("rus")]
public string Rus { get; set; }
[JsonProperty("eng")]
public string Eng { get; set; }
[JsonProperty("chn")]
public string Chn { get; set; }
[JsonProperty("visible")]
public int Visible { get; set; }
[JsonProperty("retry")]
public int Retry { get; set; }
[JsonProperty("rent")]
public int Rent { get; set; }
[JsonProperty("multiService")]
public int MultiService { get; set; }
public CountryItem(int id, string rus, string eng, string chn, int vis, int ret, int rent, int multi)
{
ID = id;
Rus = rus;
Eng = eng;
Chn = chn;
Visible = vis;
Retry = ret;
Rent = rent;
MultiService = multi;
}
}
Попытка использования:
List<CountryItem> lst_country = new List<CountryItem>();
var country = JsonConvert.DeserializeObject<CountryJson>(result);
foreach (var c in country.Country)
{
var itemCountry = c.Value;
lst_country.Add(new CountryItem(itemCountry.ID, itemCountry.Rus, itemCountry.Eng, itemCountry.Chn,
itemCountry.Visible, itemCountry.Retry, itemCountry.Rent, itemCountry.MultiService));
}
Ошибка в том, что country.Country равняется null, значит я что-то делаю не так.