gpt4 book ai didi

c# - 如何将此语句从 (LINQ To Object) Criteria 转换为 Lambda 表达式?

转载 作者:太空宇宙 更新时间:2023-11-03 14:14:16 25 4
gpt4 key购买 nike

我是 Linq 的新手。只是想知道如何将此条件表达为 Lambda 表达式?

        var query = from person in personList
from toy in person.Toys
from animal in person.Animal
where animal.Name == "Cat"
select new
{
person.Id,
toy
};

我已经试过了:

var newlist = personList.Select(p => new { id = p.Id, toys = p.Toys });

但我不知道将 where 子句放在哪里。谢谢

最佳答案

这大致等同于:

query = personList.SelectMany(p => p.Animal.Where(a => a.Name == "Cat")
.SelectMany(a => p.Toys.Select(t => new
{
p.Id,
toy = t
})));

如果你有LinqPad您可以单击 λ 选项卡并查看语句的等效 lambda 语法。

关于c# - 如何将此语句从 (LINQ To Object) Criteria 转换为 Lambda 表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6956640/

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