Итак, у меня есть List<SearchResult> Results
, который будет возвращать несколько результатов для одного свойства 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
и делать это правильно, вместо того, чтобы вручную кодировать цикл, который разделяет их на отдельные списки.
Что за хитрость?