想象一下,我有这个课程:
class Person
{
string Name { get; set; }
string Surname { get; set; }
string Other { get; set; }
}
我有IList<Person>
,现在我希望IList<string>
是每个人Name
的序列。
我可以使用这个循环:
var Names = new List<string>();
foreach (Person p in Persons)
{
Names.Add(p.Name);
}
但是,我想知道linq(或任何其他选项)是否允许我更容易地做到这一点?
感谢。
答案 0 :(得分:3)
lstPersons.Select(x=> x.Name).ToList()
答案 1 :(得分:3)
var Names = Persons.Select(p => p.Name).ToList();
答案 2 :(得分:1)
var items = new List<Person>();
items.Add(...);
items.Add(...);
var people = items.Select(x=>x.name);