LINQ将一个列表中的项目与另一个列表中的任何项目进行比较

LINQ将一个列表中的项目与另一个列表中的任何项目进行比较,linq,entity-framework,linq-to-entities,Linq,Entity Framework,Linq To Entities,我想知道,是否有人能帮我 如果一个IList中的任何项包含在另一个IList中,是否存在将返回bool的LINQ查询 这些IList是对象,我需要将其中一个与对象的单个属性进行比较,在本例中是Name属性 是否有LINQ查询可以做到这一点?如果是的话,有人能告诉我正确的实现方法吗 谢谢您您可以同时投影两个列表: if (list1.Select(x => x.Name) .Intersect(list2.Select(x => x.Name)) .

我想知道,是否有人能帮我

如果一个IList中的任何项包含在另一个IList中,是否存在将返回bool的LINQ查询

这些IList是对象,我需要将其中一个与对象的单个属性进行比较,在本例中是Name属性

是否有LINQ查询可以做到这一点?如果是的话,有人能告诉我正确的实现方法吗


谢谢您

您可以同时投影两个列表:

if (list1.Select(x => x.Name)
         .Intersect(list2.Select(x => x.Name))
         .Any())

这就是你想要的吗?

好吧,你可以同时列出两个列表:

if (list1.Select(x => x.Name)
         .Intersect(list2.Select(x => x.Name))
         .Any())

这就是你想要的吗?

我想这应该可以:

bool matchExists = list1.Any(a1 => list2.Any(a2 => a1.Name == a2.Name));

我认为这应该做到:

bool matchExists = list1.Any(a1 => list2.Any(a2 => a1.Name == a2.Name));

另一个供您选择:

List1.Where(l => List2.Select(s => s.Name).Contains(l.Name)).Any();

另一个供您选择:

List1.Where(l => List2.Select(s => s.Name).Contains(l.Name)).Any();

阅读条件后更新。。。我应该在表演前学会阅读。阅读后更新条件。。。在表演之前我应该先学会阅读。再次感谢乔恩,这正是我所需要的!再次感谢乔恩,这正是我需要的!