Пробой
- TSource: это тип элементов в коллекции, которые необходимо заказать
- TKey: ключ типа, по которому упорядочены элементы.
Func<TSource,TKey>
: делегат, который вернет ключ для данного элемента в коллекции
Эта функция по сути является функцией сортировки. Как таковой, он нуждается в способе сравнения элементов в коллекции. Этот конкретный метод предполагает, что для данного объекта существует соответствующее значение ключа, по которому они могут быть отсортированы.
Возьмем, к примеру, следующий класс Ученик
class Student {
string Name { get; set; }
...
}
Если бы я хотел отсортировать коллекцию Student
экземпляров по их имени, я мог бы сделать следующее
IEnumerable<Student> col = GetTheStudents();
var ordered = col.OrderByDescending( x => x.Name );
В этом случае значения будут следующими:
- TSource:
Student
- TKey:
String
Func<TSource,TKey>
: это переданное в лямбда-выражении x => x.Name