Sorting JArray in C# with Newtonsoft.Json
By Tan Lee Published on Jan 09, 2025 292
Although you can't directly sort a JArray in C#, you can work around this limitation.
If your JArray consists of simple data types like numbers or strings, you can convert the JArray into a list, sort that list, and then convert it back into a JArray.
For example, let’s consider the following JSON array of numbers:
[5, 3, 8, 1, 7]
We want to sort this array in ascending order.
// Setting up the test data JArray jArray = new JArray(); jArray.Add(5); jArray.Add(3); jArray.Add(8); jArray.Add(1); jArray.Add(7); // Converting JArray to List and sorting List<int> numbers = jArray.ToObject<List<int>>(); numbers.Sort(); jArray = JArray.FromObject(numbers); // Output the sorted result foreach (var item in jArray) { Console.WriteLine(item); }
In this example:
- First, the
JArray
is converted to a strongly typed list of integers. - The list is then sorted in ascending order.
- Finally, the sorted list is converted back into a
JArray
.
Output:
1 3 5 7 8
Categories
Popular Posts
Material Lite Admin Template
Nov 14, 2024
11 Things You Didn't Know About Cloudflare
Dec 19, 2024
Toolbox Admin Responsive Tailwind CSS Admin Template
Nov 20, 2024
Focus Admin Dashboard Template
Nov 18, 2024