我有一個消息列表。在每條消息中都有一個響應類型列表。我需要以消息按ID排序的方式提取查詢,響應類型也按ID排序。它們不是通過數據庫中的ID進行排序的。EntityFramework排序子集
messageResponse.Messages = (from m in db.Messages.Include("ResponseType")
.SomeMagicSubSortThing("ResponseType.ID")
select m).OrderBy(m1 => m1.ID).ToList<Message>();
這將導致:
Message ID Col1 Col2
-- ResponseType ID Col1 Col2
...像這樣:
1 MessageA MessageB
-- 1 ResponseTypeC ResponseTypeD
-- 2 ResponseTypeQ ResponseTypeR
-- 3 ResponseTypeX ResponseTypeZ
-- 4 ResponseTypeL ResponseTypeM
2 MessageE MessageF
-- 1 ResponseTypeG ResponseTypeH
-- 2 ResponseTypeI ResponseTypeJ
-- 3 ResponseTypeB ResponseTypeS
-- 4 ResponseTypeL ResponseTypeC
現在,我可以爲了得到消息,但響應類型是什麼爲了數據庫擁有它們。如何對響應類型進行分類?
這裏的ResponseType是一個實體集合(不是標準的LINQ子集),因爲我使用的是實體框架。我沒有對ResponseType對象中的屬性直接訪問Linq(我知道的)。我真的希望這是LINQ,但事實並非如此。 – Jerry
用另一個可能的選項更新它 – Matthew
第二種方法是我們試圖實現的方法。由於代碼存在其他問題(而不是您建議的實現),因此我們無法使用它。但是,如果我們一開始就建立了合適的東西,第二個解決方案將是一個很好的方法。 – Jerry