2015-11-02 62 views
0

我想用我预期的List声明结果List。我预计名单看起来像下面的代码如何声明包含相同数据的两个集合

List<GroupOfStuff> expectedResult = new List<GroupOfStuff>(); 
List<Stuff> stuffList = new List<Stuff>(); 
Stuff stuff = new Stuff 
{ 
    DeliveryDays = 3 
}; 
stuffList.Add(stuff); 
GroupOfStuff groupByCountry = new GroupOfStuff 
{ 
    Country = "Australia", 
    StuffDetails = stuffList // List<Stuff> type 
}; 
expectedResult.Add(groupByCountry); 

和我有实际为List<GroupOfStuff> actual = obj.Result()

我通过this post去。但我又得到另一个GroupOfStuff类包含另一个List成员。所以,shell我去分开断言类的每个成员或者什么建议,我是如何声明它们的。

回答

0

找到我想你可以使用扩展方法Enumerable.SequenceEqual<TSource>()来达到这个目的。小例子如何使用它:

 class Pet 
     { 
      public string Name { get; set; } 
      public int Age { get; set; } 
     } 

     public static void SequenceEqualEx1() 
     { 
      Pet pet1 = new Pet { Name = "Turbo", Age = 2 }; 
      Pet pet2 = new Pet { Name = "Peanut", Age = 8 }; 

      // Create two lists of pets. 
      List<Pet> pets1 = new List<Pet> { pet1, pet2 }; 
      List<Pet> pets2 = new List<Pet> { pet1, pet2 }; 

      bool equal = pets1.SequenceEqual(pets2); 

      Console.WriteLine(
       "The lists {0} equal.", 
       equal ? "are" : "are not"); 
     } 
相关问题