ExtensionsReorderTOrderKey, TValue - метод
Выполняет упорядочивание элементов коллекции по заданной функции getOrderFunc,
определяющей ключ, по которому производится упорядочивание. Если при сортировке коллекция была изменена,
то она очищается, а затем в неё добавляются упорядоченные элементы.
Рекомендуется использовать метод в случае, если получение ключа сортировки в функции
getOrderFunc может занять значительное время.
Метод возвращает исходную коллекцию values для цепочки вызовов.
Пространство имён: Tessa.Platform.CollectionsСборка: Tessa (в Tessa.dll) Версия: 3.6.0.22
public static ICollection<TValue> Reorder<TOrderKey, TValue>(
this ICollection<TValue> values,
Func<TValue, TOrderKey> getOrderFunc,
IComparer<TOrderKey> comparer = null,
bool descendingOrder = false
)
<ExtensionAttribute>
Public Shared Function Reorder(Of TOrderKey, TValue) (
values As ICollection(Of TValue),
getOrderFunc As Func(Of TValue, TOrderKey),
Optional comparer As IComparer(Of TOrderKey) = Nothing,
Optional descendingOrder As Boolean = false
) As ICollection(Of TValue)
public:
[ExtensionAttribute]
generic<typename TOrderKey, typename TValue>
static ICollection<TValue>^ Reorder(
ICollection<TValue>^ values,
Func<TValue, TOrderKey>^ getOrderFunc,
IComparer<TOrderKey>^ comparer = nullptr,
bool descendingOrder = false
)
[<ExtensionAttribute>]
static member Reorder :
values : ICollection<'TValue> *
getOrderFunc : Func<'TValue, 'TOrderKey> *
?comparer : IComparer<'TOrderKey> *
?descendingOrder : bool
(* Defaults:
let _comparer = defaultArg comparer null
let _descendingOrder = defaultArg descendingOrder false
*)
-> ICollection<'TValue>
- values ICollectionTValue
- Коллекция значений, сортировка которых выполняется. Не может быть равна null.
- getOrderFunc FuncTValue, TOrderKey
-
Функция, возвращающая ключ сортировка для каждого из значений в коллекции values.
- comparer IComparerTOrderKey (Optional)
-
Компаратор, используемый для сравнения значений по ключу сортировки TOrderKey,
или null, если используется компаратор по умолчанию.
- descendingOrder Boolean (Optional)
-
Признак того, что вместо сортировки по возрастанию выполняется сортировка по убыванию.
- TOrderKey
- Тип ключа сортировки, определяемый для каждого значения в сортируемой коллекции.
- TValue
- Тип значений, сортировка которых выполняется.
ICollectionTValueИсходная коллекция
values для цепочки вызовов.В Visual Basic и C# этот метод можно вызывать как метод экземпляра для любого объекта типа
ICollectionTValue. При вызове метода для экземпляра следует опускать первый параметр. Дополнительные сведения см. в разделе
Методы расширения (Visual Basic) или
Методы расширения (Руководство по программированию в C#).
Метод учитывает, что коллекция
values может быть объектом
ListStorageT
со своими правилами добавления строк.