gpt4 book ai didi

linq - lambda 表达式中更深层次的 LINQ 查询

转载 作者:行者123 更新时间:2023-12-04 03:30:48 25 4
gpt4 key购买 nike

我想使用 LINQ 查询获取那些电话号码 == "666666"的员工。

这些是类定义:

public class Employees
{
public List<Phones> Phones{get;set}
}
public class Phones
{
public string Id{get;set;}
public string Number{get;set;}
}

这是我的查询(我的疑问表示为 ???):

var employees= data.GetEmployees()
.Where(e=> e.Phones ???i need to navigate a level below phones ???)
.Select(e => new Employee()
{
Id=e.Id,
Name=e.Name
});

我的问题是我不知道如何深入了解这个 LINQ 表达式,因为在 e=>e... 中我可以访问 Phones作为 IEnumerable 但我想导航到 Phone 的属性。

最佳答案

执行此操作的最简单方法是使用嵌套的 LINQ 查询。在这种情况下,您应该查看 Any 方法。

var employees= data
.GetEmployees()
.Where(e => e.Phones.Any(p => p.Number == "666666"))
.Select(e => new Employee() {
Id = e.Id,
Name = e.Name
});

关于linq - lambda 表达式中更深层次的 LINQ 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8854118/

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