2010-12-07 76 views
0

我有以下代码:使用LINQ LAMBDA嵌套式结合两个列表

 List<MyClass> list1 = GetList1Contents(); 
     List<MyClass> list2 = GetList2Contents(); 

     foreach (MyClass eachClass in list1) 
     { 
      List<MyClass> results = (list2.Select(x => x.History.Select(z => (z.Key == eachClass.ID)))); 
     } 

MyClass的含有一种叫历史记录列表。我想要做的是匹配列表1中有历史记录条目的列表2中的任何条目 - 但编译器不喜欢我的语法。

+2

您可能想要使用Where或Any(和/或连接),但很难确切知道您想要实现的目标。历史列表的类型是什么?什么是History.Key和MyClass.ID?请提供更多细节。 – 2010-12-07 08:49:58

回答

2
List<MyClass> results = list2.Where(x => x.History.Any(z => (z.Key == eachClass.ID))).ToList();