En LINQ, los operadores de clasificación se utilizan para reorganizar la secuencia dada en orden ascendente o descendente en función de uno o más atributos. Hay 5 tipos diferentes de operadores de clasificación disponibles en LINQ:
- Ordenar por
- orden por descendiente
- Entonces por
- EntoncesPorDescender
- Reverso
Operador OrdenarPorDescendente
El operador OrderByDescending se utiliza para reorganizar los elementos de la secuencia dada en orden descendente. No es compatible con la sintaxis de consulta en C# y VB.Net. Solo admite sintaxis de métodos . Si desea reorganizar u ordenar los elementos de la secuencia o colección dada en orden descendente en la sintaxis de consulta, utilice la palabra clave descendente como se muestra en el siguiente ejemplo.
Y en la sintaxis del método, use OrderByDescending()método para ordenar los elementos de la secuencia o colección dada. Este método está presente tanto en la clase Queryable como en la Enumerable. Y la sintaxis del método es compatible con los lenguajes C# y VB.Net. Como se muestra en los siguientes ejemplos. El método OrderByDescending ordena los elementos de la colección de acuerdo con una sola propiedad, no se le permite ordenar la colección usando varias propiedades.
Ejemplo 1:
// C# program to print the employee // ID in descending order using System; using System.Linq; using System.Collections.Generic; // Employee details public class Employee { public int emp_id { get; set; } public string emp_name { get; set; } public string emp_gender { get; set; } public string emp_hire_date { get; set; } public int emp_salary { get; set; } } class GFG { // Main method static public void Main() { List<Employee> emp = new List<Employee>() { new Employee() {emp_id = 209, emp_name = "Anjita", emp_gender = "Female", emp_hire_date = "12/3/2017", emp_salary = 20000}, new Employee() {emp_id = 210, emp_name = "Soniya", emp_gender = "Female", emp_hire_date = "22/4/2018", emp_salary = 30000}, new Employee() {emp_id = 211, emp_name = "Rohit", emp_gender = "Male", emp_hire_date = "3/5/2016", emp_salary = 40000}, new Employee() {emp_id = 212, emp_name = "Supriya", emp_gender = "Female", emp_hire_date = "4/8/2017", emp_salary = 40000}, new Employee() {emp_id = 213, emp_name = "Anil", emp_gender = "Male", emp_hire_date = "12/1/2016", emp_salary = 40000}, new Employee() {emp_id = 214, emp_name = "Anju", emp_gender = "Female", emp_hire_date = "17/6/2015", emp_salary = 50000}, }; // Query to print the ID of the // employees in descending order // Using Descending keyword in // query syntax var res = from e in emp orderby e.emp_id descending select e; foreach(var val in res) { Console.WriteLine("Employee ID: {0}", val.emp_id); } } }
Producción:
Employee ID: 214 Employee ID: 213 Employee ID: 212 Employee ID: 211 Employee ID: 210 Employee ID: 209
Ejemplo 2:
// C# program to print the employee // name in descending order using System; using System.Linq; using System.Collections.Generic; // Employee details public class Employee { public int emp_id { get; set; } public string emp_name { get; set; } public string emp_gender { get; set; } public string emp_hire_date { get; set; } public int emp_salary { get; set; } } class GFG { // Main method static public void Main() { List<Employee> emp = new List<Employee>() { new Employee() {emp_id = 209, emp_name = "Anjita", emp_gender = "Female", emp_hire_date = "12/3/2017", emp_salary = 20000}, new Employee() {emp_id = 210, emp_name = "Soniya", emp_gender = "Female", emp_hire_date = "22/4/2018", emp_salary = 30000}, new Employee() {emp_id = 211, emp_name = "Rohit", emp_gender = "Male", emp_hire_date = "3/5/2016", emp_salary = 40000}, new Employee() {emp_id = 212, emp_name = "Supriya", emp_gender = "Female", emp_hire_date = "4/8/2017", emp_salary = 40000}, new Employee() {emp_id = 213, emp_name = "Anil", emp_gender = "Male", emp_hire_date = "12/1/2016", emp_salary = 40000}, new Employee() {emp_id = 214, emp_name = "Anju", emp_gender = "Female", emp_hire_date = "17/6/2015", emp_salary = 50000}, }; // Query to print the name of the // employees in descending order // Using OrderByDescending method var res = emp.OrderByDescending(e => e.emp_name); foreach(var val in res) { Console.WriteLine("Employee Name: {0}", val.emp_name); } } }
Producción:
Employee Name: Supriya Employee Name: Soniya Employee Name: Rohit Employee Name: Anju Employee Name: Anjita Employee Name: Anil
Publicación traducida automáticamente
Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA