with ventajas tutorial expresiones entre diferencia linq lambda

linq - ventajas - ¿Orden descendiendo en expresión lambda?



linq with lambda expression in c# (6)

Como dice Brannon, es OrderByDescending y ThenByDescending :

var query = from person in people orderby person.Name descending, person.Age descending select person.Name;

es equivalente a:

var query = people.OrderByDescending(person => person.Name) .ThenByDescending(person => person.Age) .Select(person => person.Name);

Sé que en la gramática normal de Linq, orderby xxx descending es muy fácil, pero ¿cómo hago esto en la expresión Lambda?


Esto solo funciona en situaciones donde tiene un campo numérico, pero puede poner un signo menos delante del nombre del campo así:

reportingNameGroups = reportingNameGroups.OrderBy(x=> - x.GroupNodeId);

Sin embargo, esto funciona un poco diferente a OrderByDescending cuando lo está ejecutando en un int? o double? o decimal? campos.

Lo que sucederá es que en OrderByDescending los nulos estarán al final, mientras que con este método los null estarán al principio. Lo que es útil si desea barajar nulos sin dividir los datos en partes y luego empalmarlos.


Intenta esto de otra manera:

var qry = Employees .OrderByDescending (s => s.EmpFName) .ThenBy (s => s.Address) .Select (s => s.EmpCode);

Queryable.ThenBy


Prueba esto:

List<int> list = new List<int>(); list.Add(1); list.Add(5); list.Add(4); list.Add(3); list.Add(2); foreach (var item in list.OrderByDescending(x => x)) { Console.WriteLine(item); }


Utilice System.Linq.Enumerable.OrderByDescending() ?

Por ejemplo:

var items = someEnumerable.OrderByDescending();


LastOrDefault() generalmente no funciona, pero con Tolist() funcionará. No hay necesidad de usar OrderByDescending usar Tolist() esta manera.

GroupBy(p => p.Nws_ID).ToList().LastOrDefault();