2009-11-09 2 views

ответ

138

Попробуйте OrderBy(x => x.Col1).ThenBy(x => x.Col2). Во всяком случае, это функция LINQ, а не только для EF.

35

Другой способ:

qqq.OrderBy(x => new { x.Col1, x.Col2}) 
+0

Как вы убывающем порядке таким образом? – user551113

+8

qqq.OrderByDescending (x => new {x.Col1, x.Col2}) – parfilko

+0

Я получаю сообщение об ошибке «Как минимум один объект должен выполнять IComparable» при использовании с ядром EntityFramework в двух строковых полях. – sixtstorm1

8

Try: OrderBy (х => x.Col1) .ThenBy (х => x.Col2)

Или для убывающих попробовать это: OrderByDescending (х = > x.Col1) .ThenByDescending (x => x.Col2)

-1

Обратите внимание, что это не будет работать с сеткой Telerik или любым другим компонентом DataSource Telerik. Хотя он использует предварительно фильтруемый объект IQueryable, сортировка всегда выполняется автоматически как последний шаг, который эффективно отменяет настройки сортировки.

Вы должны следовать: Specifying default sort in grid

Смежные вопросы