Читать из неизвестной структуры 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"]);
Другие вопросы по тегам