gpt4 book ai didi

c# - 用于过滤项目列表的 Lambda 表达式

转载 作者:可可西里 更新时间:2023-11-01 08:32:30 26 4
gpt4 key购买 nike

我有一个项目列表,我想知道是否有人可以用 lambda 表达式帮我过滤这个列表。

这是我的列表:

List<List<Item>> myList = ExtractList();

这是我的 Item 类的样子:

public class Item {
public string Name {get;set;}
public string Action {get;set;}
}

我想过滤此列表并仅获取项目名称 =“ABC”且项目操作 =“123”的项目列表。

感谢您的帮助

最佳答案

简单:

myList.SelectMany(sublist => sublist)
.Where(item => item.Name == "ABC" && item.Action == "123");

这会为您提供所有列表中的所有项目。

如果您想选择包含该项的子列表:

myList.Where(sublist => sublist.Any(item => item.Name == "ABC" && item.Action == "123"));

最后,如果您想保留相同的结构但只保留与过滤器匹配的项目:

var newList = myList.Select(sublist => sublist
.Where(item => item.Name == "ABC" && item.Action == "123")
.ToList()).ToList();

关于c# - 用于过滤项目列表的 Lambda 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9811219/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com