gpt4 book ai didi

c# - 使用 LINQ 查询从列表中返回对象

转载 作者:行者123 更新时间:2023-11-30 19:02:16 25 4
gpt4 key购买 nike


我有一个 List Say foo,它包含 A 类数据(包含成员 FName、LName、Total)。我需要获取 LName 为“foobar”的数据列表。

我知道这听起来是个简单的问题,但这让我很生气!因为我将在运行时获取返回列表的成员。

提前致谢

编辑:对不起,极客们,列表是动态的,列表是对象类型的。我只在运行时知道它是 A 类类型

最佳答案

可以使用 LINQ 轻松完成:

using System.Linq;

(...)

List<A> foo = GetFooList(); // gets data
List<A> fooBorItems = foo.Where(a = > a.FName == "foobar").ToList();

或者使用基于语法的查询:

List<A> fooBorItems = (from a in foo
where a.FName == "foobar"
select a).ToList();

对于 List<object>使用 Cast<T>首先是扩展方法。它将所有源集合元素转换为 A (并在不可能时抛出异常):

List<A> fooBorItems = foo.Cast<A>().Where(a = > a.FName == "foobar").ToList();

OfType<A> (它将只返回可以转换的元素,不能转换的元素没有异常(exception)):

List<A> fooBorItems = foo.OfType<A>().Where(a = > a.FName == "foobar").ToList();

关于c# - 使用 LINQ 查询从列表中返回对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15872217/

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