我有類別下面的表。Orderby然後通過使用LINQ
tbCategories
CatgID CatgName
------ --------
1 Catg1
2 Catg2
3 Catg3
4 Catg4
現在我有一個項目表,被分類鏈接到上述類別
tbItem
ItemID ItemName ItemCatg Priority
------ -------- -------- --------
1 Name 1 1 1
2 Name 2 1 2
3 Name 3 2 1
4 Name 4 3 3
5 Name 5 4 2
6 Name 6 3 1
優先
1 - High
2 - Medium
3 - Low
現在,當我顯示該項目的數據,我想與類別Catg1
第一顯示項目,Catg2
和Catg4
基於它們的優先級,然後根據它們的優先級與Catg3
顯示項目。
我曾試過LINQ
表達式,但是我沒有成功。我對LINQ
或SQL
的瞭解並不太強,但這是我能達到的程度。
model.items = db.tbItem.OrderBy(p=>p.ItemCatg).ThenBy(p=>p.Priority).ToList();
有人能告訴我正確的方法來實現這個功能嗎?
UPDATE
我想實現以下組合同時顯示。
ItemID ItemName ItemCatg Priority
------ -------- -------- --------
1 Name 1 1 1
3 Name 3 2 1
2 Name 2 1 2
5 Name 5 4 2
6 Name 6 3 1
4 Name 4 3 3
這看起來不錯,但一旦物品已被排序項目與catg1,catg2和catg4必須根據他們的優先級顯示..你可以請暗示,更改..? –
提供的代碼就是這樣做的。你看過這個例子嗎?它應該證明排序,因爲我明白你要求它,所以也許我沒有得到你想要的。 – CaseyR
他只是要求它按優先順序排序,然後按類別排序(除了應該在最下面的Cat 3項目) – Kcoder