2010-10-04 19 views

回答

0

在分組之前,您可以將它們分頁。


它很容易頁這個東西在內存:

var page = 
(
    from g in groups 
    from item in g 
    select item 
).Skip(100).Take(20); 

它並沒有轉化爲SQL非常好 - 這就是爲什麼沒有人回答。問題是,當你詢問一個組的元素時,linq To Sql通過組鍵重新查詢數據庫以獲取這些元素。這就是爲什麼不分組排序和頁面更好。

您可以通過使用三元運算符實現條件排序:

var query = 
from c in Customers 
order c by 
    c.Name.StartsWith("B") ? 1 : 
    c.Orders.Any() ? 2 : 
    3, 
    c.Name 
select c; 
+0

事情是我需要訂購團體的一種方式,然後由另一價值秩序每個組內的文件。 – Gazeth 2010-10-04 15:17:46

相關問題