엔티티 프레임 워크를 사용하여 2 개의 열을 정렬해야합니다.
어떻게 된 거죠?
return _repository.GetSomething().OrderBy(x => x.Col1 .. Col2)?
즉
SELECT * FROM Foo ORDER BY Col1, Col2
답변
시도해보십시오 OrderBy(x => x.Col1).ThenBy(x => x.Col2)
. 어쨌든 EF에만 국한되지 않는 LINQ 기능입니다.
답변
또 다른 방법:
qqq.OrderBy(x => new { x.Col1, x.Col2} )
답변
시험:
OrderBy(x => x.Col1).ThenBy(x => x.Col2)
내림차순으로 주문하려면 다음을 시도하십시오.
OrderByDescending (x => x.Col1).ThenByDescending (x => x.Col2)
답변
다음 정렬은 DB 수준에서 발생합니다. 반환 된 결과에 없습니다.
시험:
IQueryable<a>.OrderBy("col1 asc, col2 asc")
예 1 :
ctx.CateringOrders.OrderBy("Details.DeliveryDate asc, Details.DeliveryTime asc")
예 2 :
ctx.CateringOrders.OrderBy("{0} {1}, {2} {3}",
"Details.DeliveryDate", "asc",
"Details.DeliveryTime", "asc"
)
IQueryable<a>
엔터티 쿼리는 어디에
있고,
"col1 asc"
열 1이고 정렬 방향
"col2 asc"
은 열 2이고 정렬 방향입니다.
답변
이것은 Telerik의 Grid 또는 다른 Telerik의 DataSource 구성 요소에서는 작동하지 않습니다. 사전 필터링 된 IQueryable 개체를 사용하지만 정렬 설정을 효과적으로 재정의하는 마지막 단계로 항상 자동으로 정렬됩니다.
따라야합니다 : 그리드에서 기본 정렬 지정