descomponen
- TSource: Este es el tipo de elementos de la colección que necesitan ser ordenados
- TKey: La clave de tipo por el cual se ordenan los elementos.
Func<TSource,TKey>
: Delegado que devolverá una clave para un elemento dado en la colección
Esta función es esencialmente una función de clasificación. Como tal, necesita una forma de comparar los elementos de la colección. Este método particular asume que para un objeto dado hay un valor clave correspondiente por el cual se pueden ordenar.
Tomemos por ejemplo la siguiente clase Student
class Student {
string Name { get; set; }
...
}
Si quisiera ordenar una colección de Student
casos por su nombre lo que podía hacer lo siguiente
IEnumerable<Student> col = GetTheStudents();
var ordered = col.OrderByDescending(x => x.Name);
En este caso, los valores serían como sigue
- TSource:
Student
- TKey:
String
Func<TSource,TKey>
: Esto se aprobó en la expresión lambda x => x.Name
¿Ya no has publicado una pregunta increíblemente similar? http://stackoverflow.com/questions/1827209/how-did-you-learn-master-c-linq-to-sql – Brandon
No, pero mientras escribía esa pregunta decidí pedirle a esta para obtener detalles sobre esta cosa , esa otra pregunta era sobre aprender LINQ to SQL, esta es sobre este bloque específico de código. – BigOmega
Supongo que deberías aprender clases genéricas y expresiones lambda. MSDN ya no parecerá críptico. –