Sorting JArray in C# with Newtonsoft.Json
By Tan Lee Published on Jan 09, 2025 359
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
HTML Bootstrap 4 Login, Register & Reset Template
Nov 11, 2024
10 Common Mistakes ASP.NET Developers Should Avoid
Dec 16, 2024
RuangAdmin Template
Nov 13, 2024
Material Lite Admin Template
Nov 14, 2024