Читать из неизвестной структуры JSON - начинающий
У меня есть строка JSON, и мне нужно извлечь значения из нее - например, мне нужно получить значение для ID
а также Name
,
string someJson = @"[ {'ID': '12'} , { 'Name' : 'JAMES'} ]";
Примечание: у меня нет модели, созданной для этого JSON
,
Мой код:
string someJson = @"[ {'ID': '12'} , { 'Name' : 'JAMES'} ]";
List<object> json = JsonConvert.DeserializeObject<List<object>>(someJson);
Console.WriteLine("json count ", json[0]["ID"]);
Console.write не печатает ID
или может распечатать Name
, Как я могу решить это? Надеюсь, я хорошо объяснил вопрос, извините, я новичок.
2 ответа
Решение
Разобрать на List<Dictionary<string, object>>
Проверьте этот пример из JSON.NET.
Ваш пример будет выглядеть так:
string someJson = @"[ {'ID': '12'} , { 'Name' : 'JAMES'} ]";
List<Dictionary<string, string>> student = JsonConvert.DeserializeObject<List<Dictionary<string, string>>>(someJson );
object val = student[0]["ID"];
Console.WriteLine($"json count {val.ToString()}");
Вы можете использовать десериализацию в JArray
string someJson = @"[ {'ID': '12'} , { 'Name' : 'JAMES'} ]";
var json = JsonConvert.DeserializeObject<JArray>(someJson);
Console.WriteLine("json count " + json[0]["ID"]);