开发者

"Order by Col1, Col2" using entity framework

I need to order by 2 columns using the entity framework.

How is that done?

return _repository.GetSomething().OrderBy(x => x.Col1   .. Col2)?

i开发者_JAVA百科.e

SELECT * FROM Foo ORDER BY Col1, Col2


Try OrderBy(x => x.Col1).ThenBy(x => x.Col2). It is a LINQ feature, anyway, not exclusive to EF.


Another way:

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


Try:

OrderBy(x => x.Col1).ThenBy(x => x.Col2)

For order by descending try this:

OrderByDescending (x => x.Col1).ThenByDescending (x => x.Col2)


Following sorting happens in the DB level. Not on the returned result.

Try:

IQueryable<a>.OrderBy("col1 asc, col2 asc")

Example 1:

ctx.CateringOrders.OrderBy("Details.DeliveryDate asc, Details.DeliveryTime asc")

Example 2:

ctx.CateringOrders.OrderBy("{0} {1}, {2} {3}", 
    "Details.DeliveryDate", "asc",
    "Details.DeliveryTime", "asc" 
)

Where IQueryable<a> is entity query, "col1 asc" is column 1 and sorting direction "col2 asc" is column 2 and sorting direction


Please note, this will not work with Telerik's Grid or any other Telerik's DataSource component. Although it uses prefiltered IQueryable object, sorting is always done automatically as last step effectively overriding your sorting settings.

You have to follow: Specifying default sort in grid

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜