Mvc从每个类别中挑选出1个项目

时间:2014-07-09 10:14:03

标签: c#

假设我有这个类的对象列表:

public class CategoryForHome
    {
        public string Name { get; set; }
        public string Img { get; set; }
        public string Category { get; set; }
    }

许多对象具有相同的类别,但我有兴趣创建仅包含1个对象/类别的新列表。我无法弄清楚这是怎么做到的? 有distinct()?使用Take()?

Var newList = new List<CategoryForHome>()

Foreach(var item in list)
{
 //Do something
   newList.Add(item)
}

我希望我能清楚地知道我想要实现的目标,任何帮助都会受到赞赏。 Tahnks!

1 个答案:

答案 0 :(得分:1)

foreach (var item in 
                list.GroupBy(catForHome => catForHome.Category)
                    .Select(group => group.OrderBy(catForHome => catForHome.Name).First()))
{
    // got item with the lowest name in every category
}