2015-07-20 3 views

ответ

0

Что-то вроде этого?

class items { 
      public int id; 
      public string name; 
      } 

static void Main(string[] args) 
     { 
      var list = new List<items>(); 
      list.Add(new items {id=1 , name="a"}); 
      list.Add(new items { id = 2, name = "b" }); 
      list.Add(new items { id = 3, name = "c" }); 

      var list1 = new List<items>(); 
      list1.Add(new items { id = 2, name = "b" }); 
      list1.Add(new items { id = 3, name = "c" }); 
      list1.Add(new items { id = 4, name = "d" }); 

      var c = list.Select(b=> new {b.id, b.name}); 
      var d = list1.Select(b => new { b.id, b.name }); 
      var merge = c.Concat(d).Distinct().ToList(); 

      foreach (var item in merge) 
      { 
       Console.WriteLine(item); 
      } 

      Console.ReadKey(); 
    } 
0
var list1 = new[]{new {Id = 1, Name = "a"},new {Id = 2, Name = "b"}, new{Id = 3, Name = "c"}}.ToList(); 
var list2 = new[]{new {Id = 1, Name = "a"},new {Id = 2, Name = "b"}, new{Id = 3, Name = "c"}}.ToList(); 

list1.AddRange(list2); 

Тогда list1 является сводный список.

0

Вы можете использовать "AddRange" или "союз" или функции "Concat" С #

например

var list1 = new[]{new {Id = 1, Name = "a"},new {Id = 2, Name = "b"}, new{Id = 3, Name = "c"}}.ToList(); 

var list2 = new[]{new {Id = 1, Name = "a"},new {Id = 2, Name = "b"}, new{Id = 3, Name = "c"}}.ToList(); 

затем

var MergedResult = list1.Union(list2).ToList(); 

или

var MergedResult = list1.AddRange(list2).ToList(); 

вы также можете использовать Concat. ..

см. Разницу между ними здесь .NET List Concat vs AddRange

Смежные вопросы