foreach (var person in peopleList.Where(person => person.FirstName == "Messi")) { selectPeople.Add(人);
我只是想知道是否有任何方法可以使用 LINQ 来简化它。
喜欢而不是看我试图使用 LINQ 只用“Messi”的列表填充所有的人...正在尝试类似...
var selectPeople = peopleList.Select(x=>x.FirstName=="Messi");
然后我可以在不检查的情况下将每个人都添加到该列表中。但它并没有完全按计划工作。
也许没有必要简化该表达式。但是这个问题似乎只是为了加强我的 LINQ 知识。
最佳答案
你很接近。实际上是在不知不觉中完成的。
var selectPeople = peopleList.Where(x=>x.FirstName == "Messi");
这将创建一个 IEnumerable<X>
,其中 X 是 peopleList 中的任何类型。
查询表达式语法为
var selectPeople = from person in peopleList
where person.FirstName == "Messi"
select person;
为了以具体的 List 格式获取它,我相信您也已经发现了 .ToList() 扩展。
关于c# - 使用 LINQ 进行简化 - 基本选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2549717/