2012-12-07 54 views
0

屬性「Orders」未加載!我怎麼能改變這個代碼加載屬性「訂單」,然後得到它的計數,所以我可以使用它排序?C#LINQ - Load Entities然後訂購它們

IOrderedQueryable<Event> orderedQuery = (paging.SortDirection == SortDirection.Ascending) 
            ? searchQuery.ToList().AsQueryable<Event>().OrderBy(e => e.Orders.Count) 
            : searchQuery.ToList() 
               .AsQueryable<Event>() 
               .OrderByDescending(e => e.Orders.Count); 
+0

我不認爲「屬性‘訂單’未加載」足以在這裏爲您解決問題。你會提供更多信息嗎? – tugberk

+0

您的代碼似乎已經獲得訂單數量。有什麼問題? –

回答

3

ToList()執行查詢並且結果列表將不包含訂單。

它,如果你不首先調用ToList()應該工作:

var orderedQuery = 
    (paging.SortDirection == SortDirection.Ascending) 
    ? searchQuery.OrderBy(e => e.Orders.Count) 
    : searchQuery.OrderByDescending(e => e.Orders.Count);