2010-04-23 46 views
-1

如何在IQueryable對象中使用orderby?如何在IQueryable對象中使用orderby?

+2

請更具體 - 你的意思是你怎麼稱呼它來創建一個有序的IQueryable?或者你的意思是如何在你自己的IQueryProvider上實現它? – 2010-04-23 08:18:41

回答

1

您可以使用它,像這樣:

var orderedResult = yourContext.YourTable 
     .OrderBy(yt => yt.SomeValueThatYouWantTheResultOrderedBy); 
+0

不,我的意思是我調用一個函數,其中Linq to Entities查詢被寫入,並返回IQueryable對象。 我想應用orderby並跳過並將擴展方法應用於此對象。 – bbbbb 2010-04-23 08:53:04

+1

@bbbbb這有什麼不同?在上面的例子中'yourContext.YourTable'是一個IQueryable。 – 2010-04-23 09:24:34

1

從klausbyskov的回答的評論,你的問題應該是:如何轉換的IOrdereQueryable成一個IQueryable對象?

在這種情況下,你應該把它轉換爲List對象第一(這意味着查詢將被執行),然後將得到的名單上進行選擇:

var orderedList = (
    from q in MyDataContext.MyTable 
    orderby q.SortColumn 
    select q 
    ).ToList(); 
var queryableList = orderedList.Select(q => q); 

注:就像我說的,orderedList將被評估,因此我不建議將它用於大型數據集。

相關問題