gpt4 book ai didi

c# - LINQ - 从对象层次结构中选择所有子项

转载 作者:太空狗 更新时间:2023-10-29 22:15:21 26 4
gpt4 key购买 nike

我有一个 List包含字符串数组作为其属性之一的对象。我想获得一个包含所有值的不同字符串数组。

我的对象看起来像这样:

public class Zoo {
string Name { get; set;}
string[] Animals { get; set;}
}

有些动物园可能只有一种动物,有些可能有很多。什么是最简单的 Lambda 表达式或 LINQ 查询来为我提供 List<Zoo> 中所有动物园的所有动物的唯一列表? ?

最佳答案

var query = zoos.SelectMany(zoo => zoo.Animals)
.Distinct();

或者,如果您是查询表达式的粉丝(我不会喜欢这么简单的东西):

var query = (from zoo in zoos
from animal in zoo.Animals
select animal).Distinct();

关于c# - LINQ - 从对象层次结构中选择所有子项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1229897/

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