How can I get a list of keys from Json.NET?

c#, json.net

Solution

IList<string> keys = parent.Properties().Select(p => p.Name).ToList();

Documentation: JObject.Properties

Problem

I'm using C# and Json.NET. If I have a JObject, I want a list of the keys within the object, similar to how `object.Keys()` returns the keys within the object. This seems like it'd be obvious, but I'm having a rough time finding a way to do this. Edit: I'm traversing through the object, and I want to spit out all the keys in the object as I go through. I realize that this example will result in seeing the same key multiple times, and that's OK for my needs. ``` public void SomeMethod(JObject parent) { foreach (JObject child in parent.Children()) { if (child.HasValues) { // // Code to get the keys here // SomeMethod(child); } } } ```

Original source

Related problems