En LINQ, es posible tener orden condicional por orden de clasificación (ascendente vs. descendente).Orden de clasificación "orderby" condicional en LINQ
Algo como esto (código no válido):
bool flag;
(from w in widgets
where w.Name.Contains("xyz")
orderby w.Id (flag ? ascending : descending)
select w)
cómo se consiguen múltiples pedidos con condiciones dinámicas si se requieren o no. – Ruchan
Solo necesita usar una variable diferente para el resultado de 'OrderBy' y' ThenBy' para mantener el tipo de devolución diferente; de lo contrario, simplemente agregue llamadas al operador LINQ correspondiente 'ThenBy' o 'ThenByDescending'. – Richard