将列表B中的字符串项添加到列表A </string>中的List <string>

时间:2014-12-10 11:33:22

标签: c# linq lambda

class ListA
{ 

   public string A {get; set;}
   public string B {get; set;}
   public List<string> C {get; set;}

}

class ListB
{
   public string A {get; set;}
   public string Z {get; set;} 
}

我想要实现的是加入列表的最佳方式。如果ListA成员A等于ListB成员A,则应将ListB中的成员Z添加到List<String> C内的ListA。 ListA与List B有一对多

由于

1 个答案:

答案 0 :(得分:0)

您可以使用Enumerable.Join这是链接元素的有效方式。这会创建一个包含两个成员的IEnumerable<anonymoustype>

var join = from a in listA
           join b in listB
           on a.A equals b.A
           select new { a, b };

foreach(var both in join)
{
    both.a.C.Add(both.b.Z)
}