34

我有一个简单的课程:

 private class Category
    {
        public int Id { get; set; }
        public string Value { get; set; }
    }  

还有一个这种类型的对象列表:

 List<Category> Categories;

我需要获取类别列表中的 ID 列表。有没有比这样使用 for 循环更简单的方法来做到这一点:

 List<int> list = new List<int>();
    for (int i = 0; i < Categories.Count; i++)
    {
        list.Add(Categories[i].Id);
    }

提前致谢。

4

2 回答 2

90

此表达式为您提供所需的列表:

    Categories.Select(c => c.Id).ToList();

还有,别忘了

    using System.Linq;
于 2013-09-20T05:32:28.310 回答
14

如下使用。

Categories.Select(c => c.Id).ToList();

||

List<int> list = new List<int>();
foreach (Category item in Categories)
{
    list.Add(item.Id);
}  
于 2013-09-20T05:34:08.813 回答