我无法围绕如何创建此查询。如果项目Cats列表包含的Cat对象与List2中其中一个Cat的ID相匹配,我需要选择列表1中的项目。这可能吗?谢谢LINQ select list子列表包含来自另一个列表的项目
List1<pet> List1 = new List<pet>(100);
List2<cat> List2 = new List<cat>(30);
//populate lists, some of the items in List2 (cat) will be in the List1 items Cats list
//classes
class pet{
string ID;
List<cat> Cats;
}
class cat {
string ID;
string name;
}
我有我的equals方法重写检查匹配的ID,这是更有效? – user2704766
在没有匹配的情况下,相交一个会更快(无论如何,任何情况都必须通过整个集合)。当有很多可能的匹配时,任何事情都会变得更快(因为它只发生一次匹配后就会停止)。我只给你了相交变体,因为在我看来它看起来更漂亮。 –
谢谢你,你和Alexanders都工作得很好! – user2704766