Как я могу получить список ключей от Json.NET?
Я использую C # и Json.NET. Если у меня есть JObject, я хочу список ключей внутри объекта, подобно тому, как object.Keys()
возвращает ключи внутри объекта. Кажется, это было бы очевидно, но у меня очень трудное время найти способ сделать это.
Изменить: Я просматриваю объект, и я хочу выплюнуть все ключи в объекте по мере прохождения. Я понимаю, что этот пример приведет к тому, что один и тот же ключ будет несколько раз, и это нормально для моих нужд.
public void SomeMethod(JObject parent) { foreach (JObject child in parent.Children()) { if (child.HasValues) { // // Code to get the keys here // SomeMethod(child); } } }
- Дезаминирование гетерогенного массива JSON в ковариантный список с использованием JSON.NET
- Как я могу зашифровать выбранные свойства при сериализации моих объектов?
- Обнаружен цикл саморегуляции - Возврат данных из WebApi в браузер
- Не удалось загрузить файл или сборку «Newtonsoft.Json, Version = 4.5.0.0, Culture = neutral, PublicKeyToken = 30ad4fe6b2a6aeed»
- Уничтожить stream массива json по одному элементу за раз
- Как настроить пользовательские настройки JsonSerializer для Json.NET в веб-API MVC 4?
- Как показать «вставить class Json» в visual studio 2012, нажав на «Специальная вставка»?
- Можно ли указать путь в атрибуте для сопоставления свойства в моем classе с дочерним свойством в моем JSON?
- Десериализация дат с форматом dd / mm / yyyy с использованием Json.Net
- Десериализация JSON с использованием JSon.NET с динамическими данными
- Как изменить имена свойств при сериализации с помощью Json.net?
- JSON.NET Parser * кажется * будет двойной сериализацией моих объектов
- Как десериализовать данные JSON?
IList keys = parent.Properties().Select(p => p.Name).ToList();
Документация: JObject.Properties
От преобразования свойств / токенов JSON.NET JObject в словарные ключи
Вы можете просто преобразовать JObject
в объект Dictionary и получить доступ к методу Keys()
из объекта Dictionary.
Как это:
using Newtonsoft.Json.Linq; //jsonString is your JSON-formatted string JObject jsonObj = JObject.Parse(jsonString); Dictionary dictObj = jsonObj.ToObject>();
Теперь вы можете получить доступ к этим ключам с помощью dictObj.Keys()
. Вы можете видеть, существует ли ключ, выполняя dictObj.ContainsKey(keyName)
.
Очевидно, что вы можете форматировать словарь, но вы хотите (может быть Dictionary
и т. Д.).