Как я могу получить список ключей от 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); } } } 

 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 и т. Д.).

  • Может ли Json.NET сериализовать / десериализовать в / из streamа?
  • .NET NewtonSoft JSON десериализует карту для другого имени свойства
  • Удаление десериализации JSON в .NET-объект с использованием Newtonsoft (или LINQ to JSON, возможно?)
  • JSON.net сериализуется непосредственно из oledbconnection
  • как десериализовать JSON в IEnumerable с помощью Newtonsoft JSON.NET
  • Дессериализация данных JSON на C # с использованием JSON.NET
  • JsonValueProviderFactory выбрасывает «запрос слишком большой»
  • Как использовать JSON.NET для десериализации в вложенный / рекурсивный словарь и список?
  • Как игнорировать свойство в classе, если null, используя json.net
  • Каков правильный способ использования JSON.NET для анализа streamа объектов JSON?
  • Deserialize json, который имеет некоторое имя свойства, начиная с числа
  • Interesting Posts

    Могу ли я заставить XmlSerializer игнорировать пространство имен при десериализации?

    Как установить программы на альтернативный диск?

    Как сравнить два объекта в модульном тесте?

    Значения постоянной продолжительности обработки в данных временных рядов

    Как конвертировать или записывать файл изображения .DMG в Windows?

    Синхронизация приложений iPhone с iTunes без их удаления

    Как сделать снимок экрана защищенного рабочего стола Windows?

    Поддерживает ли Google Chrome синхронизацию истории между компьютерами?

    Когда Java-строки интернированы?

    Как выполнить файл сценария .sql с использованием JDBC

    Объявить массив const

    Как найти n-ое появление символа в строке?

    Хорошая или плохая практика для Dialogs в wpf с MVVM?

    Марширование коллекции байтов байтов в структуру для вытягивания значений

    Я защищаюсь от программного обеспечения сетевого мониторинга, если используется HTTPS?

    Давайте будем гением компьютера.