2010-08-25 171 views
1

我有幾個表格,商品清單,ListingImages以及一些與商品相關的其他商品。 ListingImages與列表相關,因此每個列表可以有多個ListingImages。訂購Linq to Entities查詢中訂購商品中的子商品

當我查詢這張表時,

IQueryable<Listing> ListingToSendToView = (from x in DBEntities.ListingSet.Include("ListingImages") 
                      .Include("OtherTables") 
              where x.Listing.ID == (int)LID 
              orderby x.ID descending 
              select x).First(); 

現在這很好。但是,我現在想要在每個清單中獨立地對ListingImages進行排序(通過我在該表中的ImageOrder列)。

我該如何做到這一點,並通過我所有的包括(...)。這種解決方案似乎有效,在視圖中排列ListingImages會不會是一種糟糕的形式?

乾杯

回答

1

我認爲你將不得不將它在視圖中進行排序,因爲如果你希望每個組有不同的排序,你必須這樣做手工。唯一的選擇是將其複製到字典或列表結構中,並按照順序對其進行排序和複製,然後從控制器中將其返回,但我甚至不知道從哪一個開始。

我不認爲對視圖進行排序是不好的形式,因爲它是UI邏輯的一部分(或者是UI的需求)......在視圖內查詢數據將會是一種糟糕的形式,並且不要小心把太多的邏輯放進去(我不知道你在談論的複雜性),但只要它是唯一的排序,我認爲沒關係。

HTH。

+0

感謝您的回答Brian。這是一個簡單的排序,所以我只是在視圖中做。 – sheefy 2010-08-25 12:03:28