如何从linq到object过滤2个列表创建列表
本文关键字:列表 过滤 2个 object 创建 linq | 更新日期: 2023-09-27 18:27:26
我想知道是否有一种方法可以使用Linq对象从过滤另外两个列表中获得列表。我有两个对象A和B的列表,它们通过一个atribute(代码:String)相互关联。B有另一个元素,名称:字符串。
我想得到一个满足2个条件的a对象的列表。
-所有A对象都必须将其A.编码矩阵与B列表中的任何B.编码矩阵相匹配。
-B.名称必须为="yoda";
我尝试了使用此代码(以及另一个示例)但它似乎不起作用,我不知道为什么。我刚从linQ开始。
List<A> FilteredAList = (from OneA in ListOfA
join OneB in ListOfB
on OneA.Code equals OneB.Code
where OneB.Name == "yoda"
select OneA).ToList<A>();
提前感谢!。
根据您的要求,我认为我们应该使用Any
方法,因此我们应该编写method query
而不是expression query
。当然,我不知道expression query
中Any
的等价物(至少它应该像method query
中那样短,否则就不好了)。如果有人知道,请留下评论。谢谢你。
var FilteredAList = ListOfA.Where(x=>ListOfB.Any(y=>x.Code==y.Code && y.Name=="yoda"))
.ToList<A>();