Вы сортируете массив любого типа точно таким же образом. Если элементы не реализуют IComparable
, метод Sort
не знает, как их сравнивать, чтобы отсортировать, поэтому вы должны сказать это. Как бы вы обычно получали это Rate
значение от такого объекта и какой это тип? Я предполагаю, что вы использовали бы свойство Item
и оно либо Double
, либо Decimal
. Вы должны сообщить Sort
методу, что, например,
Array.sort(BuyList, Function(jo1, jo2) CDec(jo1.Item("Rate")).CompareTo(CDec(jo2.Item("Rate"))))
Это использует перегрузку, которая принимает делегата Comparison(Of T)
. Такой делегат относится к методу, который, учитывая два элемента массива, будет сравнивать их определенным образом и возвращать значение Integer
, которое указывает их относительный порядок. Обычно это сводится к вызову одного или нескольких CompareTo
методов типов, которые реализуют IComparable
, как Decimal
.