因此,我有一個List<SearchResult> Results
,當Item
屬性不同時,將返回單個Category
屬性的多個結果。我將如何顯示一個列表<Item>,以便它們按其中一個屬性進行分組?
因此,例如,結果可能是:
SearchResult[0].Category = "Food"
SearchResult[0].Item = "Ham"
SearchResult[1].Category = "Food"
SearchResult[1].Item = "Cheese"
SearchResult[2].Category = "Food"
SearchResult[2].Item = "Crackers"
SearchResult[3].Category = "Drink"
SearchResult[3].Category = "Juice"
等
現在我想這樣顯示出來:
項目中的食品類包括:火腿,奶酪,和餅乾
飲料類別中的項目包括:飲料
等
,但是這是我現在有:
@foreach (SearchResult result in Results)
{
<p>Items in the @result.Category category include: @result.Item </p>
}
這當然顯示這樣的數據:
項目中的食品類包括:火腿
食品類別中的項目包括:奶酪
個項目中的食品種類包括:餅乾在飲料類
項目包括:果汁
現在我覺得一定是有LINQ魔法我就可以在List
工作,這樣做正確,而而不是手動編碼將它們分離成單獨列表的循環。
訣竅是什麼?
好的,我遺漏了一些細節,我認爲不會是im portant(垃圾)......但是如果在下一個foreach之前我想與Category一起顯示其他值,那該怎麼辦? 'g'var似乎不允許我訪問它們中的任何一個。 – BigOmega 2012-02-09 19:16:02
這些其他值是否與某個類別中的每個項目相同?然後你可以簡單地在外部foreach中使用'g.First()'的值。 – dtb 2012-02-09 19:19:13
真棒謝謝! – BigOmega 2012-02-09 19:21:04